2012-11-05 87 views
1

我發佈了這個問題以獲得有關問題的建議。供參考...我已經嘗試了方法1和2,但我對編程(以及部分用戶體驗也)的觀點的結果並不滿意。在表格中重新排列單元格查看

我有一個表有2個部分。每個部分有4個單元格。每個單元格都包含一個textField。當用戶按下Edit按鈕(位於navigationBar)時,用戶可以改變單元的位置,即 - 他/她可以將單元從一個部分移動到另一個部分。簡單!

到目前爲止,我一直在考慮三種方法。

  1. 在每個單元中包含一個UIButton對象。該按鈕可以具有+或 - 的圖像。 - 將細胞從第二部分移動到第一部分,並將細胞從第一部分移動到第二部分。但一旦進行了更改,按鈕的圖像應該從+變爲 - 反之亦然。但我意識到我無法以編程方式更改按鈕的圖像。所以我將不得不爲每個單元製作兩組按鈕=> 16個按鈕+ 16個按鈕@propertyhiddenYES更改爲NO並與之相反。我個人認爲這不是最好的方法。更糟糕的是,我將不得不跟蹤單元在從一個部分轉換到另一個部分時應該出現的索引。

  2. 在第1節和第2節中有8個單元格。第2節中的4個單元格在第1節中顯示爲隱藏,反之亦然。當用戶在一個部分A中按下+時,其屬性應該設置爲隱藏在部分A中,並且應該在部分B中可見。但是,當單元格的屬性設置爲隱藏時,會在其位置創建一個空白十分難看。有沒有辦法填補空白?另外,如果我使用分組單元格,則截面末尾的剩餘單元格不會有圓角底部。

  3. 用戶可以將細胞從一個部分拖到另一個部分。 (FYI ..拖拽由三條水平線表示)問題:拖拽特徵的流行程度如何?用戶是否會解釋它而不被應用程序建議?如果這是最好的方法,我該如何實現它?

如果您能幫我選擇最佳選擇,我會很高興。

謝謝!

乾杯!

編輯1:

什麼,如果有三個部分,是有可能改變2和3之間/移動領域,而不進行任何更改第1節?

回答

0

選項3是標準方法,已通過UITableView及其數據源和委託方法實施。用戶習慣於使用這個標準接口。

您需要做的只是實現與移動行相關的適當的數據源和委託方法 - 總共三個。

如果您對實現這三種方法有任何疑問,請參閱有關詳細信息的iOS的表格視圖編程指南。

+0

謝謝馬迪......如果你的回答是幾個小時後的最佳答案,我肯定會接受。:-) –

+0

@maddy:如果有三個部分會怎麼樣?是否可以在2和3之間更改/移動字段,而不對第1部分進行任何更改? –

+0

是的。在你的'tableView:canMoveRowAtIndexPath:'方法中,對於第1節中的任何indexPath返回NO,對於其餘的則返回YES。此外,'tableView:targetIndexPathForMoveFromRowAtIndexPath:toProposedIndexPath:'的實現應該確保返回的索引路徑在期望的範圍內。 – rmaddy