你知道 Xcode 13 中的 Vary for Traits 在哪里吗?

Posted

技术标签:

【中文标题】你知道 Xcode 13 中的 Vary for Traits 在哪里吗?【英文标题】:Do you know where’s the Vary for Traits in Xcode 13? 【发布时间】:2021-11-16 01:56:06 【问题描述】:

我在 Xcode 13 中找不到 Vary for Traits。 提前感谢您的帮助!

【问题讨论】:

你找到这个按钮了吗? 还没有,还在寻找中 【参考方案1】:

您可以在布局约束中引入任何变体

【讨论】:

对字体颜色/大小等属性执行此操作似乎很好,但在具有 50 多个甚至 100 多个约束的视图控制器中,浏览它们非常棘手。删除“Vary for trait”按钮很糟糕(甚至可能是无意的更改或错误?)。我无法想象这就是我们需要如何管理尺寸类约束的方式。 Apple 的文档仍然引用该按钮。【参考方案2】:

您可以在 Attributes 和 Size Inspector 窗格中设置特定于 Trait 的变体。

例如,假设我们有这样的布局:

带有堆栈视图属性:

但是——当我们有一个常规宽度特征时,我们希望它看起来像这样:

使用这些堆栈视图属性:

切换回我们原来的布局(垂直堆栈视图,间距:8,高度:120)。

选择堆栈视图,然后在“属性检查器”窗格中,单击Axis左侧的+按钮,然后从弹出窗口中选择Width -> Regular/Height -> Any

当我们点击Add Variation 按钮时,我们会看到一个新的wR 变体,我们可以在其中选择Horizontal

现在点击Spacing左侧的+,再次选择Width -> Regular/Height -> Any

当我们点击Add Variation 按钮时,我们将看到一个新的wR 变体,我们可以将8 更改为32

现在我们选择Height约束,在Size面板中点击Constant左侧的+,再次选择Width -> Regular/Height -> Any

当我们点击Add Variation 按钮时,我们会看到一个新的wR 变体,我们可以将120 更改为64

现在,当我们在 Storyboard / Interface Builder 中切换方向时(以及在运行时旋转设备时),我们将得到我们想要的结果。

【讨论】:

感谢分享,但它看起来比以前更可怕和更糟。我无法再可视化我的更改,我很困惑应用了哪些约束,哪些不适用于特定布局。糟糕!【参考方案3】:

我找到了一种解决方案,假设您在 0 处为肖像设置了前导、尾随、顶部和底部约束。 现在在底部栏中,在日志窗口上方,点击“方向”以将视图放置在景观中。 现在找到要为该变体更改的约束并双击该约束,然后点击常量字段旁边的 + 图标并添加一个新变体,在此示例中为景观。然后更改一个值,这些值将被实现,一个用于纵向,一个用于横向。

【讨论】:

【参考方案4】:

根据this,唯一的解决方法是执行以下操作:

您为活动尺寸类设置了约束 需要在“文件检查器”选项卡中启用特征变化 之后,您可以通过单击属性旁边的加号手动添加特征(它将使用活动尺寸类,但您可以修改它 同时创作)

不幸的是,这仅适用于属性,不适用于约束。没有其他解决方法。

每个遇到这些问题的人都应该发布错误报告,让 Xcode 开发人员知道。

【讨论】:

我无法根据 iPhone 和 iPad 屏幕尺寸设置图像视图的高度。无论如何,约束大小保持不变。任何演示都将不胜感激

以上是关于你知道 Xcode 13 中的 Vary for Traits 在哪里吗?的主要内容,如果未能解决你的问题,请参考以下文章

Xcode 13 中的 Info.plist 在哪里? (缺失,不在项目导航器内)

Xcode 13.1 中的 Navigationlink 问题——空白而不是链接?

更新到 xcode 13 后无法推送 TestFlight

Xcode SpriteKit:如何在 Xcode 13 中添加 Sprite Atlas

xcode4.2 for lion不知道如何设置

ios 8.4 模拟器在 xcode 6.4 中的尺寸非常大?