代码约束与VFL
一、蘋果原生自動(dòng)布局介紹
二、代碼約束(code constraint)
1、操作步驟
一、首先先設(shè)置子控件的屬性,如懶加載控件,再將控件添加到父視圖上。 二、取消所有子控件的translatersAutoresizingMaskIntoConstraints(自動(dòng)適配autoresizing)設(shè)置成false. //代碼約束時(shí)這個(gè)要設(shè)置成falsefor v in subviews{v.translatesAutoresizingMaskIntoConstraints = false} 三、添加約束 //設(shè)置x,y,因?yàn)槭菆D片,可以只設(shè)置x,yaddConstraint(NSLayoutConstraint(item: backImageView,attribute: .centerX,relatedBy: .equal,toItem: self,attribute: .centerX,multiplier: 1.0,constant: 0)) 注意:當(dāng)是按鈕或UIImageView設(shè)置好圖片好,只用設(shè)置它們的x、y的值就可?2、使用規(guī)則
addConstraint(NSLayoutConstraint(item: backImageView,attribute: .centerX,relatedBy: .equal,toItem: self,attribute: .centerX,multiplier: 1.0,constant: 0))第1個(gè)item:視圖attribute:約束屬性,如左邊,右邊,尾部,居中,頂部(.left,.right,.bottom,.top)relatedBy:約束關(guān)系,如大于,等于,小于等,.equaltoItem:參照視圖,如父視圖 self,如果參照視圖是自己的話設(shè)置為nilattribute:參照視圖約束屬性,如果參照視圖是自己的話設(shè)置設(shè)置為.notAnAttributemultiplier: 乘積,如1.0,0.5constant:約束數(shù)值分析: 上面的例子,添加backImageView,它的中心點(diǎn)x等于父視圖的中心點(diǎn)x乘以1再加上0?三、VFL
1、操作步驟
? 1.1使用方法
??
? 1.2操作函數(shù)addConstraints(NSLayoutConstraint.constraints(withVisualFormat: <#T##String#>, options: <#T##NSLayoutFormatOptions#>, metrics: <#T##[String : Any]?#>, views: <#T##[String : Any]#>))
2、使用規(guī)則
?
轉(zhuǎn)載于:https://www.cnblogs.com/TheYouth/p/6488829.html
總結(jié)
- 上一篇: 34.16.159(zz)
- 下一篇: RxJava+Retrofit+OkHt