我有一個Plist文件(外部包),用於存儲用戶的最愛。一旦加載,它就像預期的那樣工作,Plist被加載到表格中。如何將plist文件重新加載到表中
但是,當您將新項目添加到Plist時:plist文件(在包之外)更新。重新加載tableview被觸發,如日誌所示。但是,數據實際上並未從Plist重新加載,而只是使用現有(數組)值。除非你退出並重新加載整個應用程序,在這種情況下更新的Plist出現在表格中。
如何讓我的表實際上從更新的Plist中重新加載,而不是僅僅使用原始數組。
謝謝。
我使用此代碼從Plist中獲取數據 - 正在工作。
NSMutableArray *rawFavArray = [[NSMutableArray alloc] initWithContentsOfFile:plistPath];
我用它來運行數組來創建表格工作的單元格信息。
return [favReloadArray objectAtIndex:indexPath.row];
我使用它來重新加載表(內viewWillApear) - 不工作,觸發日誌,但不會重新加載plist中。
[self.tableView reloadData];
當我嘗試的變化在plist中的數據 - 我能做到這一點,但任何改變不會在表中顯示,除非我退出應用程序,並重新開始。
聽起來你正在用新項目創建一個新數組,然後將該數組保存到plist文件中,但不會將該數組提供給tableview,因爲它是新內容。請編輯您的問題以包含您的源代碼,以便我們向您展示如何完成。 –
reloadData僅告訴UITableView重新加載可見單元格並調用委託方法。它不會重新加載任何數組或模型對象。也就是說,你不應該在應用程序之外修改plist - 尤其是在iPhone上,這幾乎不可能(除非越獄)。 –