我有一個NSMutableArray的保存UIViewControllers集合重新排序基於其CGPoint的UIView的集合
在其他的屬性和方法,每個viewControllers的實例被放置在一個父視圖
用戶將在需要時單獨放置這些對象。
所以基本上我使用 - (void)addSubview:(UIView *)視圖添加到父視圖控制器的新視圖。
因爲UI是等距它使事情稍微更復雜
我所試圖做的是重新排序基於其座標位置的看法,所以項目越往上父UIView的幀索引低於父UIview框架中較低的視圖。並且位於視圖左側的項目位於比右側更高的索引處
我認爲解決方案可能與重新排序NSMutableArray有關,但我如何才能比較CGpoints?我是否需要分別比較x和y?
是用戶可以拖動的意見,因爲他們的願望,它已經安裝程序檢測到其他意見,使他們不要重疊等,我已經差不多完成了這個課程,這是實際的索引順序,給了我一點悲傷。我會看看CALayers類,看看是否有幫助。 另外,如果你也許可以回答這個問題,exchangeSubviewAtIndex看來可能有用,但視圖控制器視圖動態添加,我看不到屬性爲視圖的索引值,我手動跟蹤這個?歡呼聲 – Chris 2010-04-05 18:04:32
exchangeSubview ...在UIView上定義。沒有辦法,因爲據我所知,得到一個視圖索引的,但你也許可以使用標籤和viewWithTag:保持與自己的陣列同步的視圖排序。但是,再次,圖層可能對您更好,並且如果您想要創建動畫和效果,將會爲您提供更好的性能和更大的靈活性。 – Felixyz 2010-04-05 18:39:49
謝謝,我只是讀了這個 - 我正在思考類似的問題,我已經管理了一個涉及獲取標籤並重新排序的解決方案。還有我沒有在我的問題提信息的一個關鍵部分,但我還是會考慮CALayers,如果它有可能與性能方面提供幫助,因爲我認爲這可能是我做過的方式有點重。乾杯! – Chris 2010-04-09 23:44:01