![](/img/trans.png)
[英]iOS - Adaptive layout (Size classes) Fetch Data as early as possible, one time and place a UIView in viewcontrollers views center
[英]ios adaptive layout / size classes to target specific phone size?
我已经把剩下的一切都弄乱了自适应布局和大小类。 刚开始我并不是天才,但现在我是秃头。
说我有一个非常简单的布局,我想确保在3.5、4、4.7和5.5 iPhone上看起来完美(并且完美的意思是我的所有ui元素都存在)。
好的,我以任何任意大小开始,所有元素都放置有约束,没有警告,没有错误。 好去。 在预览模式下加载各种尺寸的手机,5.5看起来不错,4.7看起来不错,4看起来还可以,3.5需要一些工作。
我想用3.5和4(NOT 4、4.7和5.5)来付诸实践,是否可以通过尺寸等级实现这一目标? 我需要在代码中执行多个情节提要还是执行此操作或某种类型的设备大小检查? 我遇到了一个走过多个故事板的家伙,似乎是个很大的黑客,很多人都对他的做法持怀疑态度,但我敢打赌他仍然长头发。
我想我要问的是,尺寸类可以用于指定特定尺寸吗? 如果您希望布局在3.5、4、4.7和5.5上看起来完美,那么建议的解决方法是什么?
不,尺寸等级并不能真正帮助您。 并且请不要做多个情节提要。 在看不到用户界面以及在较小的屏幕上遇到什么问题的情况下,很难给出一些具体的建议,但是在大多数情况下,如果用户界面无法在相同尺寸级别的尺寸之间正确缩放,我想您应该重新考虑一下用户界面或您的约束。
在最坏的情况下,您可能会遇到有问题的约束,并根据屏幕大小从代码中更新约束。
在这里查看我的答案:
https://stackoverflow.com/a/28093987/1135714
就像我说的,AutoLayout不是特定于设备的,但是有一种解决方法。 您可以放置UIView
或通过代码设置约束(这很简单)。
只有所有不同尺寸的iPhone设备都可以使用一种尺寸类型,即紧凑尺寸。 因此,解决方案是1。当您设置约束时,您必须设置关系(等于,大于或等于或小于或等于)。 这有助于根据当前设备的大小调整视图的大小或视图之间的间距。
为了获得您的期望外观,我们必须清除具有不同优先级,关系,不同大小的约束值的紧凑约束设置(compact-regular,compact-compact,regular-regular,regular-compact)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.