您的位置:首页 > 移动开发 > IOS开发

iOS 约束的思维盲点

2016-01-13 13:24 369 查看
iOS 约束的思维盲点

苹果是这样来描述约束的,当设计师把界面的原稿给开发人员时,会这样描述其上的一个控件,它距离上面的控件的距离是10,左边是10,下面也是10,长度是父view的1/5,并且最小是20,这些个条件就是一个个约束。满足这些约束就可以唯一的确定该控件的布局。设计师用标注来体现这些约束,开发人员是用代码来描述这些约束。

这的确是很好的设计方式,但是有一点,苹果没有搞清楚。

这个控件距离上面控件距离是10,这个上面的控件,是不确定的。设计师表达的是不管上面控件是哪个,本控件都要距离他10,而苹果实现的约束必须要指定这个上面的控件是哪个,这样的话,本控件和上面的控件通过约束关联了起来。如果上面的控件被移除,那么这个约束也就失去了支撑点,因而也要被移除。此时,本控件就不知道该怎么确定自己的布局。

对于这种情况,苹果给出的解决方案是,移除上面的控件后,要手动给本控件再添加一个约束或者事先把这个约束添加好并调低它的优先级。 对于这样的解决方案,我觉得更像是打补丁。

如果一个界面上有很多控件,彼此之间通过约束固定。这个界面布局的确定依赖于每个控件的存在,如果某个控件在一些情况下不存在了,你就要打补丁,如果有一些控件在一些情况下,分别不存在,你就等着哭吧,这里的一些并不需要很多,三个就要你命。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: