【发布时间】:2018-07-01 10:20:49
【问题描述】:
我真的很想自己解决这个问题,但是现在已经 3 个小时了,我认为这种问题不值得花一半的时间,所以我在这里寻求帮助。
这是auto-layout problem,所以我会尽力正确地说明它。
我有一个stack view,其中包含两个labels(故事板中的O 和_)。问题是我无法修复stack view 的大小以使label's font size auto-shrink 在较小的屏幕上同时正确显示在较大的屏幕上...
在 iPhone 5s 上效果最佳:
故事板 =
约束 =
模拟器 =
iPhone 8 结果 =
在 iPhone 8、8+ 和更大的屏幕上效果最佳:
故事板 =
约束 =
模拟器 =
iPhone 5s 和更小的屏幕结果 =
我想这是 StackView 让事情变得比他们应该的更难.. stack view 内的 labels 没有固定大小会很棒。我能做什么?
【问题讨论】:
-
你的堆栈视图有什么限制?
-
嗨,Linus,
stack view的约束显示在屏幕截图中。 -
我正在专门寻找堆栈视图的尾随约束。我唯一能看到的是
trailing = Stack View.trailing - 15。等式的左边部分应该是超级视图吗? -
确实如此。这是允许
auto-shrink工作的原因,但该约束也为stack view内的labels提供了一个固定大小,当没有足够的文本来填充所有空间时,这会使更大屏幕上的排列混乱。 -
我应该放弃并在一个标签中打印所有内容吗?
标签: xcode autolayout storyboard uilabel uistackview