到目前为止,在我的iOS项目中,我几乎完成了代码中的所有操作。我通过在layoutSubviews
和viewWillLayoutSubviews
方法中手动设置框架来展示我的观点。但是,这是一种非常手动的方式,我正在考虑其他方法,例如AutoLayout ......我的问题是我对AutoLayout缺乏经验(以及其他方法,例如使用自动调整大小的蒙版)。
我手动布局的问题如下:
假设我将子视图添加到视图控制器的视图中。现在让我们说我正在为这些子视图添加子视图等。我的问题是这些子视图中的许多是动态大小的,即它们的大小取决于来自服务器的数据。
所以现在需要从父视图布局子视图的框架 - 因为父视图在子视图布局之前定义子视图的框架。但是虽然儿童的观点已被实例化,但它们尚未布局,所以他们没有设置框架,因此我不知道它们的大小。
非常令人烦恼。我对这个问题的解决方案是为这些子视图实现一个方法,它根据数据返回它们的大小。这是无关紧要,耗时且乏味的。
我的问题是 - 将切换到AutoLayout(或自动调整大小的蒙版)会使这些问题消失吗?他们是否会为手动设置框架提供相同的可重用性?我一般只是做错了吗?