ios - "Vary for Traits"未按预期工作

标签 ios iphone xcode8

根据我对 this question 的回答中所解释的理解您可以为您想要的任何设备调整 Storyboard 上的任何组件的大小,这就是问题发生的地方.. 我有一张图片,它的常规分辨率是:353x229,这张图片在 iPhone 4s 屏幕上看起来很大,所以我只想在 4s 屏幕上将它的大小调整为 300x194,我就是这样做的:

首先,我点击 Vary for Traits 按钮,然后点击图像,然后点击右侧的“Show the Size inspector”,然后我将“Width Equals”改为 300,“Height Equals” ”到 194,然后单击“完成变化”。

但问题是图像会针对每台设备调整大小!甚至是 iPad!我不明白为什么会发生这种情况,我应该如何阻止这种情况发生?

最佳答案

也许你现在已经明白了。但如果其他人有类似的问题,这是我的 2 美分:

我遇到了类似的问题:标签需要针对 iPhone 和 iPad 具有不同的高度。但每次我使用 vary for traits 更改 iPad 上标签的高度时,它也会更改 iPhone 上的高度。

这是我修复它的方法:

  1. 选择对象(在我的例子中是标签)
  2. Size Inspector中,双击您想要为不同设备更改的约束条件
  3. 点击Constant旁边的+号。
  4. 选择适当的特征(在我的例子中,iPad 的常规高度+宽度)并添加变化。
  5. 现在,在 Constant 下拉菜单下方,您将看到相应设备的不同布局。
  6. 您现在可以更改相应约束的大小。

请注意,您必须为每个需要更改的约束执行此操作。我意识到它也应该通过选择所需的设备并单击 Vary for Traits 来工作。但我认为它有问题,所以这是完成同一件事的另一种方法。

关于ios - "Vary for Traits"未按预期工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40116935/

相关文章:

ios - SwiftUI:向控件添加效果会禁用交互性

ios - 使用 JSONModel 库将 jsonarray(具有不同类型)转换为模型数组

javascript - YouTube 视频播放完毕后未关闭

ios - UITableView 行在重新排序时快速重复

ios - 如何从 `Any` 类型访问某些对象?

ios - 在 applicationWillTerminate 中发送请求

ios - UICollectionView 滚动到一个项目

ios - UICollectionViewCell 滚动后重叠错乱

iphone - 拦截 Store Kit 警报 View

iOS - 在 Swift 3 中以编程方式删除和激活新约束时布局损坏