鍍金池/ 問答/iOS  網(wǎng)絡(luò)安全/ systemLayoutSizeFitting中的兩個(gè)約束是指該視圖水平和垂直方

systemLayoutSizeFitting中的兩個(gè)約束是指該視圖水平和垂直方向的抗壓縮優(yōu)先級(jí)?

func systemLayoutSizeFitting(_ targetSize: CGSize, withHorizontalFittingPriority horizontalFittingPriority: UILayoutPriority, verticalFittingPriority: UILayoutPriority) -> CGSize

其中兩個(gè)約束到底是指哪方面的約束,文檔中說是水平和垂直方向的優(yōu)先級(jí),是指水平和垂直方向抗壓縮優(yōu)先級(jí)?

回答
編輯回答
夢(mèng)若殤

寫了幾個(gè)view測(cè)試看起來像是指抗壓縮優(yōu)先級(jí),但這個(gè)方法本身不會(huì)改變視圖的約束,只是根據(jù)targetSize和約束的優(yōu)先級(jí)計(jì)算內(nèi)容的width、height。

我們常用的func systemLayoutSizeFitting(_ targetSize: CGSize) -> CGSize方法文檔中說明就是執(zhí)行了func systemLayoutSizeFitting(_ targetSize: CGSize, withHorizontalFittingPriority horizontalFittingPriority: UILayoutPriority, verticalFittingPriority: UILayoutPriority) -> CGSize方法,只不過其中兩個(gè)約束參數(shù)都為50,也就是說其抗壓縮優(yōu)先級(jí)很低,會(huì)根據(jù)內(nèi)容約束計(jì)算出合適的width和height。-------- 不知道說的對(duì)不對(duì)!

2018年9月1日 19:16