问题标签 [size-classes]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
237 浏览

ios - iPhone 6 Plus 和所有其他小屏幕之间的不同 UITableViewCell / UICollectionViewCell 指标

我有一个 iOS 应用程序,目前支持 iPhone 和 iPod touch(但不支持 iPad)的所有屏幕尺寸,仅支持纵向。该应用程序支持 iOS 7 及更高版本。我的视觉设计师建议在 iPhone 6 Plus 上显示时增加某些UITableViewCell和实例中的一些指标。UICollectionViewCell例如,仅在 iPhone 6 Plus 上,显示图标或联系人照片的图像单元格(按点)大约会大 25%。

在 apple.com 上阅读了这篇自适应尺寸设计文章后,我发现 iPhone 6 Plus 在纵向时与小屏幕设备没有明显的尺寸等级。这是否意味着我应该检测屏幕分辨率并在代码而不是 xib 中处理特定于 iPhone 6 Plus 的指标?或者有没有办法在我还没有遇到的xib中处理这个?

在代码中,我可以轻松地为 iPhone 6 Plus 指定要加载的备用 xib,但更希望只有一个 xib 来支持所有屏幕尺寸和比例因子。这个应用程序将来可能会支持 iPad,但不是现在。

0 投票
2 回答
868 浏览

ios - Xcode 6.1 Interface Builder未根据设备类型显示元素

昨晚我在 Interface Builder 中处理大小类。我创建了一个新的 xib 文件并添加了两个标题为“iPhone”和“iPad”的按钮。目的是“iPhone”按钮应在所有 iPhone 设备上可见,而“iPad”按钮应在所有 iPad 设备上可见。

一切都很好,它在所有设备上都显示了预期的结果。

但问题出在 iPad 2 (iOS 7.0.4) 上显示标题为“iPhone”的按钮。 我已经在以下显示正确结果的设备上进行了测试。

设备:

1)iPhone 3、4 和 5。

2)iPad 2 (iOS 8.1.1)

为此,我遵循了以下步骤:

1)使用xib创建新的视图控制器文件。(文件->新建->文件->可可触摸类->将“子类:”设置为(例如)UIViewController并选中“也创建XIB文件”。)

2) 将 Interface Builder 窗格更改为“wConpact hRegular”。

3) 添加了标题为“iPhone”和约束的按钮,因为它应该看起来水平居中并从顶部 150 像素开始。

4) 将 Interface Builder 窗格更改为“wRegular hRegular”。

5) 添加了标题为“iPad”和约束的按钮,因为它应该从顶部 150 像素水平居中看。

我在用:

代码:6.1

基于 SDK:8.1

部署目标:6.1

设备:通用

使用自动布局:选中

使用尺寸等级:选中

结果截图:

1) iPhone 5s

第二) iPad 2 (iOS 8.1.1)

第三) iPad 2 (iOS 7.0.4)

iPhone 5S

iPad 2 (iOS 8.1.1)

iPad 2 (iOS 7.0.4)

重要的是如果我使用 Storyboard 进行设计是没有问题的。 我不明白为什么会这样?是否有我遗漏的任何财产或其 iOS 错误。

请建议。提前致谢。

0 投票
1 回答
183 浏览

ios8 - xCode6 如何以编程方式锁定 iOS 7.1 设备的纵向?

我有一个使用故事板、自动布局和大小类的 xCode6 项目。本项目的部署目标是 iOS 7.1 。我正在使用以下尺寸等级:

  • 适用于纵向 iPhone 的 Any/Any
  • 紧凑的高度/横向的任何宽度

我注意到,当部署到 iOS 7.1 时,设备会忽略与大小类相关的约束,而仅使用“Any/Any”。我不想只为 iOS 7.1 创建单独的故事板,所以我想将 iOS 7.1 设备锁定为纵向模式。在我看来,这将需要某种适用于 iOS 7.1 的条件编译语句,但我不确定该放在哪里。

如何修改我的项目以在 iOS 7.1 的纵向模式下锁定所有控制器?

0 投票
0 回答
62 浏览

ios - 自动布局更改子视图大小

  1. 我的视图控制器中有一个视图,比如 HeaderView。
  2. 我使用自动布局将 HeaderView 的高度设置为 85。
  3. 相对于超级视图,我已经给出了其他约束,例如该视图的前导和尾随空间。
  4. 在 x 代码预览中一切看起来都很好,并且 x 代码中没有错误。
  5. 当我在 iPhone6 中运行应用程序时,HeaderView 的大小变为几乎 200。

有没有人遇到过这个?自动布局出了什么问题?

编辑: 布局约束

0 投票
1 回答
319 浏览

ios - IOS 8 Adaptive Layout. Different Layout for ipad orientation

Can some one please give me some idea of how to use universal storyboard to show different layouts for iPad portrait and landscape.

0 投票
1 回答
538 浏览

ios - iOS 8 通用应用程序中的 iPad 资产

我有一个完全支持 iPhone 6 plus 的应用程序。我刚刚将它转换为通用应用程序,我观察到 iPad 能够以最高分辨率捕捉所有资产——不确定它使用的是@3x 版本还是@2x 版本。我想知道放置 @2x~ipad 资产的要求是否是多余的,或者如果应用程序在运行 iOS 7 的 iPad 上运行会出现问题?仅供参考,我使用尺寸类和故事板。

0 投票
2 回答
2345 浏览

ios - 根据尺寸等级更改约束的乘数

是否可以根据当前的尺寸等级为约束提供不同的乘数?

我有一个观点,对于常规尺寸类宽度,我希望屏幕尺寸的一半,对于紧凑尺寸类宽度,我希望它是屏幕尺寸的 80%。在情节提要中,我可以选择将不同大小类的不同变量添加到约束常量值,但不是乘数。如果相关,这是一个等宽约束。

我在以编程方式添加约束方面做得不多,所以我希望它们可能是一个解决方案。谁能告诉我是否可以通过情节提要或以编程方式完成我正在寻找的事情?

0 投票
0 回答
146 浏览

ios - iOS7 和 iOS8 UI 框架问题

我有一个稍微广泛的 UI,我必须将不同的视图放在另一个下面。因此,我将每个视图创建为一个单独的UIView类,并将它们一个接一个地粘贴到一个UIViewController.

我面临的问题是 和 的框架UIViews不同。按我想要的方式工作。iOS7iOS8iOS7

在此处输入图像描述||在此处输入图像描述

第一张截图来自iOS8,第二张截图来自iOS7。我在添加视图时专门提供了高度,如下所示:

iOS7完美调整,距左侧 10 个像素并正确设置框架。但是iOS8,帧大小不是 255。我使用的是大小类。为什么会这样?

0 投票
1 回答
66 浏览

ios - 在 iPhone 6 和 iPhone 6 Plus 中不显示 iAd 的大小类别更新的 xib

我需要更新我的旧应用程序以支持iPhone 6iPhone 6 Plus设备。经过一些更改并添加 @3x 大小的图像后,所有界面现在看起来都不错,但我注意到当我在 xib 文件中选中使用大小类”时,我在 iPhone 6 和 iPhone 6 Plus 中不再看到 iAd 。所有其他设备正常显示广告。对于测试,我只是使用简单的代码行来支持广告:

在 xib 文件中,我只有导航栏、日期时间选择器和几个标签。没有可以隐藏横幅的可见元素。我还有其他带有 xib 文件的 VController,但我已将其更改为不带 xib 的控制器,并带有以编程方式实现的视图元素,因此它现在显示广告。插页式广告在所有视图控制器中加载都没有问题。有没有人有同样的问题并且知道如何解决它?

0 投票
2 回答
470 浏览

ios - 了解 IOS8 大小类

我一直在 Xcode 上玩大小类来尝试理解它。我遇到的问题是,许多不同尺寸的手机都适合同一个尺寸等级(就像所有纵向的 iPhone 一样),所以我不能在 3.5 英寸的屏幕上观看。这令人沮丧,因为我想更改手机之间的布局约束而不仅仅是类,因为显然我需要使事物之间的间隙更大或按钮稍大以保持一切成比例。我不知道这是否是我错过的东西,但似乎我能做到这一点的唯一方法是创建我想要更改为插座的每一个布局约束,然后在每部手机的代码中进行测试并使用粗略的更新它估计并在模拟器上运行这个东西。

总之,当它们都在同一个类中时,如何根据设备的大小调整约束?使用百分比/比例约束应该会给我我想要的结果。