我们在编写xib的时候偶尔会遇到这样的需求:
![](https://img.haomeiwen.com/i35161/842d882dfb9baf3a.jpg)
如上图,如何将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,就可以啦!
如果没有看懂,可以看下图:
![](https://img.haomeiwen.com/i35161/533e1c2631577dd5.jpg)
当然万能的网友一定还有其他的解决方法,可以在评论区留言,一起学习。
网友评论