如何在UIScrollview中重新排列和删除UIViews,例如在iOS主屏幕中重新排列的应用程序

时间:2014-10-13 06:35:27

标签: ios iphone uiscrollview core-animation uiviewanimation

我在UIScrollview中有一些UIViews,并为scrollview添加了一个页面控制器。 是否可以使用在iOS主屏幕中重新排列的拖放功能删除视图并重新排列视图?

请提供一些指导或参考。 提前谢谢。

2 个答案:

答案 0 :(得分:1)

我猜你必须在删除的视图后运行循环。

假设有20个视图并且您要删除第11个视图,那么您必须从第12个视图运行循环到第20个视图并将它们重新排列到前一个视图的框架。

在这种情况下,您必须将所有子视图存储在NSMutableArray中。

另一种最佳方式

您可以在UICollectionView删除或删除任何项目时使用UICollectionView,它会自动重新排列所有视图的位置。

有关UICollectionView的教程,请查看以下链接

您只需调用以下代码即可删除UICollectionView

的项目
[self.collectionView deleteItemsAtIndexPaths:[NSArray arrayWithObject:indexPath]];

A Springboard-Like Layout With the UICollectionView Class

答案 1 :(得分:1)

要实现iPhone的主屏幕,您应该只使用一个对象来捕捉用户的触摸。

您想要实现的内容,称为 GridView

您可以使用关键字网格

http://cocoacontrols.com进行研究

这是了解如何执行此操作的最佳示例:https://github.com/gmoledina/GMGridView