我一直以来都是用代码做我的用户界面,但我决定在当前项目中使用storyboard和自动布局。一切都进行得很顺利,直到我构建了一个包含约50个视图以及一些网格视图的复杂场景。问题是,我的自动布局在某些设备和方向上变得混乱。我发现使用IB尝试修复数十(数百?)个约束很具有挑战性,或者跟踪问题并解决它们。情况是这样的,我没有收到错误或警告,只是有时会出现不愉快的布局。而且,IB可能需要您点击和更改设置来跟踪约束信息,更不用说获得有关它们在场景中如何相互关联的完整想法了。
我刚刚花了一天时间阅读有关自动布局和约束的文档和背景材料,似乎使用可视化格式在代码中指定约束并创建一些自定义代码是最好的解决方案。然而,我似乎找不到关于如何从IB过渡到代码的任何信息。
具体地说,我应该清除所有IB约束并全部手动完成,还是可以有选择地执行?我之所以问这个问题,是因为我有一些包含视图组的容器视图,其中内容视图具有完美的布局。
其次,我应该将代码放在哪里?我想共存storyboard,并只想有选择地修改一些复杂场景。ViewWillAppear:是否是控制其视图的视图控制器修改或删除/添加约束的正确位置?
我刚刚花了一天时间阅读有关自动布局和约束的文档和背景材料,似乎使用可视化格式在代码中指定约束并创建一些自定义代码是最好的解决方案。然而,我似乎找不到关于如何从IB过渡到代码的任何信息。
具体地说,我应该清除所有IB约束并全部手动完成,还是可以有选择地执行?我之所以问这个问题,是因为我有一些包含视图组的容器视图,其中内容视图具有完美的布局。
其次,我应该将代码放在哪里?我想共存storyboard,并只想有选择地修改一些复杂场景。ViewWillAppear:是否是控制其视图的视图控制器修改或删除/添加约束的正确位置?