整理各種控件的位置設置及約束方法
屏幕尺寸
屏幕尺寸(以分辨率的像素為單位彰导,后部分的分辨率為尺寸二倍)
- @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(開發(fā)應按照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