可以根据周围的视图自动重新定位UIView吗?

时间:2013-09-23 22:47:51

标签: ios objective-c uiscrollview

我有一个UIScrollView,其中有多个子视图表示行(类似于UITableView)。我想在我的一行下面插入一个新视图。如果我使用的是UITableView,我只需使用tableview:insertRowsAtIndexPaths:withRowAnimation:在特定索引处插入一行。复制此行为的最佳方法是什么?我目前唯一的想法是遍历我的新视图下方的所有子视图,并将每个帧向下推Y(我插入的视图高度)。有没有办法让我的子视图自我意识到周围环境(很像在HTML中插入DIV),所以我不必明确指定每个视图的框架?

Insert a view

1 个答案:

答案 0 :(得分:1)

我的建议是让您的生活更轻松,并使用带流量布局的UICollectionView。 它非常灵活,可以让您轻松管理项目的插入/删除。

自定义UIScrollView的另一种方法是使用“自动布局”指定新插入的视图与周围视图之间的相对约束。动画布局更改可能会带来您想要的效果。