iOS coding tips:xib-設(shè)置子View邊距的高級方法

我們在編寫xib的時候偶爾會遇到這樣的需求:

如上圖,如何將UIImageView的左邊距等于父View寬的1/10?

我第一次遇到這個問題的時候,我的大概思路是:將UIImageView的NSLayoutAttributeLeading和父View的NSLayoutAttributeWidth建立聯(lián)系,然后改變multiplier參數(shù)就應(yīng)該可以實現(xiàn)了。那么問題來了,該怎么將UIImageView的NSLayoutAttributeLeading和父View的NSLayoutAttributeWidth建立聯(lián)系呢?答案是不可能的,所以這種思路不可行。

正確的解決思路:

我們一定要想要獲取到父View寬的1/10,那么必須有一個子View的NSLayoutAttributeWidth和父View的NSLayoutAttributeWidth建立聯(lián)系,然后修改multiplier為0.1才可以得到父View寬的1/10。將這個子View放到最左邊,透明度設(shè)為0或者將其hidden掉,然后UIImageView與其的間距為0,就可以啦!

如果沒有看懂,可以看下圖:

當(dāng)然萬能的網(wǎng)友一定還有其他的解決方法,可以在評論區(qū)留言,一起學(xué)習(xí)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容