如何在IOS中设置视图的最大宽度?
我的应用程序有一个基本的login屏幕,外框和一些文本框和button。 我设置框来填满屏幕。 但是,在一些设备上,这个盒子会很大。 我想设置一个最大的宽度和高度。
如何将最大宽度和高度设置为视图?
您可以使用自动布局约束,以使该框适应屏幕大小,但不会超过给定的宽度和高度。 为此,请在宽度和高度上设置“小于或等于”约束。
- 将顶部,底部,前导,尾部,宽度和高度限制添加到框中。
- 将顶部,底部,前后约束的优先级设置为高 (750)。
- 将宽度和高度约束的关系设置为小于或等于 (≤)。 默认值是Equal 。
- 将宽度和高度约束的优先级设置为“ 必需” (1000)。
- 将宽度和高度约束的常量设置为您想要框的最大大小。
如果您使用Interface Builder,您可以:
-
ctrl + clic你的视图,并将蓝色箭头拖到超视图。
-
按住shift并select“等宽”和“等高”
-
然后去你的视图的约束(小标尺图标),并设置一个乘数0.5像素,使您的视图宽度/高度等于其超级视图各自维度的一半。
如果你想给一个视图的框架来修复所有设备,那么使用这个width
和height
self.view.frame.size.width,self.view.frame.size.height
或者,您可以通过将视图拖动到其边缘来给自动布局Top
Bottom
Trailing
和Top
Leading constraints
。
UIView *viw=[UIView alloc]init]; viw.frame=CGRectMake(x,y,CGFLOAT_MAX,h);
很简单,您只能使用该容器视图的四个约束(即顶部空间,底部空间,顶部空间,尾部空间)。
尝试下面的代码可能会帮助你
yourviewObject.frame=CGRectMake(yourviewObject.frame.origin.x,yourviewObject.frame.origin.y,self.view.frame.size.width,yourviewObject.frame.size.height)