我有一個相當複雜的子類UITableViewController。最重要的是,根據用戶設置(在不同的視圖中訪問),tableview中的數據可以通過三種方式之一進行排序。每個設置都需要對tableview進行不同的排序和分組,儘管行中項目的行爲是常見的(例如,無論顯示設置如何,每行的select動作都是相同的。類似地,頂部和底部工具欄是一致的)。這會導致我的代碼基於應用的用戶設置進行大量分支。在不同的表格視圖之間切換
有沒有一種很好的方法來分開這一點?我考慮了UITableView的三個不同的子類,但後來我失去了共同性。所以也許是一個抽象的自定義UITableView子類,有三個子類從那裏繼承?如何在設置更改後的實例之間切換?
也許你有更好的主意?由於只有tableview本身的內容發生了變化,所以我想避免重複和維護相同的代碼三次。
謝謝,但這是我目前有 - 每個方法的三個if子句,所以很多難以閱讀的代碼。我想知道是否有辦法將它們移入子類或以其他方式劃分功能。 – 2012-03-14 02:12:34