你知道 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 问题——空白而不是链接?