我发现自己经常需要在隐藏或显示其中一个视图后重新定位视图的子视图。我这样做的方式是通过编程方式更改视图框架的原点和/或大小或其中心。但是,我有一个更容易的方法吗?有没有办法用Autosizing mask做到这一点?
答案 0 :(得分:2)
我认为没有任何自动方式可以做到这一点。您可能会巧妙地了解如何以编程方式执行此操作(例如,如果您使用了一组顺序标记标识符,则可以循环并计算先前可见标记的高度以计算下一个子视图的来源;或者是否存在总是要一起移动的子视图组,你可以将它们放在一个容器UIView
中,然后通过移动它们的容器视图移动它们中的一大堆;等等......这取决于它们是如何组合的布局以及可能隐藏哪些字段。
这对您现在没有帮助,但请查看WWDC 2012 session 202以了解有关iOS 6相关改进的讨论。