Objective c iOS在移动应用程序时重新定位视图

Objective c iOS在移动应用程序时重新定位视图,objective-c,ios,ipad,views,Objective C,Ios,Ipad,Views,我正在开发一个iOS应用程序,其中有一个网格视图(3x4) 我希望能够像移动应用程序一样移动它们:做一个长按,使所有视图都开始抖动,然后你可以将视图移动到你想要的位置,其他视图重新定位 我知道如何检测长按以及如何设置视图的动画,但是视图如何能够一起移动以为您移动的视图腾出位置?(就像应用程序一样) 谢谢 我要做的是将它分解为多个步骤。首先,计算栅格中每个视图的两个状态。前位置和后位置。核心动画将处理如何从前状态到后状态的中间动画。因为要拖动视图,所以需要检测要拖动的视图最接近的行、列,并在视图进

我正在开发一个iOS应用程序,其中有一个网格视图(3x4)

我希望能够像移动应用程序一样移动它们:做一个长按,使所有视图都开始抖动,然后你可以将视图移动到你想要的位置,其他视图重新定位

我知道如何检测长按以及如何设置视图的动画,但是视图如何能够一起移动以为您移动的视图腾出位置?(就像应用程序一样)


谢谢

我要做的是将它分解为多个步骤。首先,计算栅格中每个视图的两个状态。前位置和后位置。核心动画将处理如何从前状态到后状态的中间动画。因为要拖动视图,所以需要检测要拖动的视图最接近的行、列,并在视图进入该区域时触发动画。重复此过程,直到用户放开为止,即视图移动到最后一行col时,此过程结束。

但其他视图如何知道要去哪里,以及如何知道每个位置有哪个视图?有没有教程或开源代码,因为听起来有点难。你用什么来制作网格?您是使用自动布局还是手动布局视图?如果您使用的是第三方框架,那么-layoutSubviews方法应该是计算每个视图位置的方法。如果您自己做布局工作,只需将视图移到一个位置即可。在视图移位+1的索引之后的视图,在发生插入的索引之前的视图保持相同的位置。那么如何检测哪些视图必须移动?我可以用它的位置调用视图吗?用CGREct?你能解释一下代码吗?