我有用戶的數組從陣列的UITableView選擇單元格
var selectedUsers = [User]()
用戶添加到這個數組,因爲他們在一個UITableView選擇(見截圖:https://www.dropbox.com/s/uk03mhgi3x4jesy/File%2006-10-2015%2C%2018%2003%2044.png?dl=0)
我有什麼困難與當我按回來,然後重新加載視圖控制器時,所有的複選標記消失。
是否有反正我可以跟蹤選定的細胞?
在此先感謝
我有用戶的數組從陣列的UITableView選擇單元格
var selectedUsers = [User]()
用戶添加到這個數組,因爲他們在一個UITableView選擇(見截圖:https://www.dropbox.com/s/uk03mhgi3x4jesy/File%2006-10-2015%2C%2018%2003%2044.png?dl=0)
我有什麼困難與當我按回來,然後重新加載視圖控制器時,所有的複選標記消失。
是否有反正我可以跟蹤選定的細胞?
在此先感謝
的這個問題的答案是有點依賴於你想要的應用程序做......你想,即使應用程序關閉時,用戶選擇堅持?如果這樣考慮使用NSUserDefaults或CoreData。否則將數據存儲在不會被吹走的地方(可能是應用程序的根視圖控制器)。你可以例如在視圖控制器上用表視圖實現委託模式,並將值傳遞給容器視圖控制器..只是一些想法。
所以你可以使用NSUserDefaults類來保存少量的數據。如果你想持久存儲,所以你必須使用核心數據,它可以幫助你用你提供的方案存儲數據。
如果你只是想將數據從一個視圖控制器傳遞到另一個視圖控制器,所以你只需要使用委託模式,或者你可以使用方法prepareForSegue在那裏你可以傳遞一些數據,但你不能以這種方式存儲,只是通過。
如果你提出的問題更詳細,你會得到更明確的答案。
您可以使用委託在兩個視圖控制器之間傳遞數組。例如,每次選擇一行時,都可以將與該行關聯的userId存儲在數組中。因此,如果您要在UITableView加載之前按下然後打開視圖,那麼可以先檢查是否有數組被傳遞給包含UITableView的視圖控制器/如果存在數組,則檢查計數大於0.如果數組不爲空,則使用for循環遍歷顯示的用戶數組,並傳遞包含所有先前選擇的ID的數組,然後添加匹配到Id的複選標記在數組中。
下面是一個具有類似示例的教程:http://makeapppie.com/2014/08/04/the-swift-swift-tutorial-why-do-we-need-delegates/