iOS coding tips:xib-设置子View边距的高级方法

我们在编写xib的时候偶尔会遇到这样的需求:

iOS coding tips:xib-设置子View边距的高级方法_第1张图片

如上图,如何将UIImageView的左边距等于父View宽的1/10?

我第一次遇到这个问题的时候,我的大概思路是:将UIImageView的NSLayoutAttributeLeading和父View的NSLayoutAttributeWidth建立联系,然后改变multiplier参数就应该可以实现了。那么问题来了,该怎么将UIImageView的NSLayoutAttributeLeading和父View的NSLayoutAttributeWidth建立联系呢?答案是不可能的,所以这种思路不可行。

正确的解决思路:

我们一定要想要获取到父View宽的1/10,那么必须有一个子View的NSLayoutAttributeWidth和父View的NSLayoutAttributeWidth建立联系,然后修改multiplier为0.1才可以得到父View宽的1/10。将这个子View放到最左边,透明度设为0或者将其hidden掉,然后UIImageView与其的间距为0,就可以啦!

如果没有看懂,可以看下图:

iOS coding tips:xib-设置子View边距的高级方法_第2张图片

当然万能的网友一定还有其他的解决方法,可以在评论区留言,一起学习。

你可能感兴趣的:(iOS coding tips:xib-设置子View边距的高级方法)