2016-01-10 29 views
0

我有一個UITableView,其中每個單元格都有一個開關。當開關打開時,我希望單元格移動到tableView的底部。使用moveRowAtIndexPath在UITableView上移動單元格

let indexPath = NSIndexPath(forRow: sender.tag, inSection: 0) 
let finalIndexPath = NSIndexPath(forRow: tasks.count - 1, inSection: 0) 

let task = tasks[indexPath.row] 
tasks.removeAtIndex(indexPath.row) 
tasks.append(task) 
self.taskTableView.moveRowAtIndexPath(indexPath, toIndexPath: finalIndexPath) 

當使用所述第一開關選擇不正是因爲我想上述代碼中,雖然在這之後按下一個單元中的開關將導致該細胞下面它移動至底部。任何提示,想法或幫助非常感謝。

回答

0

它與您如何設置.tag屬性有關。如果你使用它來獲得索引,那麼每當你做出改變和移動時都需要更新這些索引。

+0

你明白了!非常感謝。如果有人想知道,我使用for循環遍歷所有單元格,並在運行移動單元格塊後更新它們的標籤。 – exotue

+0

很高興爲您服務! – bolnad

+0

嘿,你知道我怎樣才能更新當前不可見的單元格上的開關的.tag屬性?謝謝。 – exotue

相關問題