我的设计在autolayout间距正确,但现在我想找到一种方法来动态更改图标和字体的视图大小,具体取决于屏幕尺寸(见下图)但没有我在自动布局中玩过的设置似乎拉伸了图像。这是我必须以编程方式完成的吗?正如您所看到的,iPhone 6版本的空间太大,所以我需要一种方法来填补它。
答案 0 :(得分:3)
你有几个选择。
1)你可以通过编程方式完成,但很多人搞砸了数学,代码也不是很干净。 (在我看来)这样做的最好方法是在你想要改变的东西上设置布局约束,并用IBOutlets连接它们(你可以像挂钩UI元素一样挂钩约束)。从那里,您可以将myConstraint.constant设置为您喜欢的任何值。
2)您还可以设置< =或> =值的约束。这允许您将事物变大或变小到极限。你可以用这些来狡猾。通常,您可以使用这些组合来设置事物的最小和最大尺寸。
3)Xcode 6允许您为不同的屏幕尺寸设置不同的约束。这是最新的方式,可能是Apple希望你这样做的方式。关于如何使用此选项应该有很多信息。
答案 1 :(得分:1)
您必须以编程方式手动控制的字体大小。但是图像尺寸可以缩放。只需将图像固定到其父级,但不要通过宽度/高度进行约束,而是添加宽高比约束。
答案 2 :(得分:1)
使用带有自动布局的大小类对于制作UIControl的方式来说非常有趣。
我正试图找出一种动态更改图标视图大小的方法,这是我必须以编程方式完成的吗?:无需以编程方式执行,您需要了解在大小类的深度,只需使用视图,宽高比,约束(兄弟姐妹)之间的关系,这样就不会与其他,You can check here for more info发生冲突。
我正试图找出一种根据屏幕尺寸动态更改字体的方法:在这里,您可以在属性检查器中将其添加到与大小类相关的,check this from Doc
答案 3 :(得分:0)