整理各种控件的位置设置及约束方法
屏幕尺寸
屏幕尺寸(以分辨率的像素为单位,后部分的分辨率为尺寸二倍)
- @1x
iPhone & iPod Touch第一代、第二代、第三代 320×480 px
- @2x
iPhone4 - 4S 640×960 px(320×480 @2x,下面直接写)
iPhone5 - 5C - 5S 320×568
iPhone6 - 6S 375×667
- @3x
iPhone 6Plus - 6S Plus 414x736(开发应按照1242x2208适配)
设置center及size
center和size的设置先后顺序影响最终布局结果。
如果先设置center,由于其尺寸为(0,0),则其origin和center值一致,再设置尺寸相当于设置了一遍frame,而不是按控件的中心位置计算坐标位置。反之则正常,按照控件中心进行定位。
可利用该特性进行分步设置frame。
设置尺寸
CGRect frame = redView.frame;
frame.size = CGSizeMake(150, 150);
redView.frame = frame;
设置center
CGPoint center = redView.center;
center.x = self.view.frame.size.width / 2;
center.y = self.view.frame.size.height / 2;
redView.center = center;
参考来源:ios 通过设置UI控件的center和size来设置位置时需注意!
Masonry常用布局方式
make.size.mas_equalTo(CGSizeMake(100, 48));
make.top.equalTo(headerView).with.offset(20);
make.centerX.equalTo(headerView);
make.height.mas_equalTo(48);
make.bottom.equalTo(locationView.mas_top).with.offset(-5);
XIB设置控件圆角或者圆形方式
在XIB的User Defined Runtime Attributes
属性中添加以下两个Key Path
:
//当cornerRadius的值为正方形控件二分之一时,
layer.cornerRadius-number-数值
layer.masksToBounds-bool-YES
网友评论