2012-10-29 40 views
0

我正在開發iOS應用程序,其中有一個視圖網格(3x4)。iOS重新定位視圖,就像移動應用程序時一樣

我希望能夠像應用程序一樣移動它們:make一個longpress,以便所有人都開始動搖,然後您可以在所需位置移動視圖,然後重新定位其他位置。

我知道如何檢測長按以及如何爲視圖添加動畫,但視圖如何完全移動以爲您移動的視圖添加位置? (就像應用程序一樣)。

謝謝!

回答

0

我會做的是分解成多個步驟。首先,爲網格中的每個視圖計算兩個狀態。前面的位置和後面的位置。核心動畫將處理如何從前一狀態到後一狀態的中間動畫。由於您要拖動視圖,因此您需要檢測哪個行,col被拖動的視圖距離哪個行最近,何時進入該區域,則會觸發動畫。重複這個過程直到用戶放開,當視圖移動到最後一行,並且過程完成時。

+0

但是,其他意見如何知道哪裏去了,你怎麼知道這個意見是在每個地方?有沒有教程或開源代碼,因爲它聽起來有點困難。 –

+0

你在用什麼來製作你的網格?您是使用自動佈局還是手動佈置視圖?如果您使用的是第三方框架,則它的-layoutSubviews方法應該是計算每個視圖的位置的位置。如果你自己在做佈局工作,你只需要將觀點轉移到一個地方。索引後的視圖移位+1,視圖位於插入正在發生的索引之前,保持相同的位置。 – Andrew

+0

那麼如何檢測到哪些視圖必須移動?我可以用它的位置來調用一個視圖嗎?用CGREct?你能對代碼做一點解釋嗎? –

相關問題