如何将plist文件重新加载到表中

时间:2011-11-09 21:15:13

标签: ios uitableview plist reload

我有一个Plist文件(在软件包之外),用于存储用户收藏夹。加载后,它按预期工作,将Plist加载到表中。

但是,当您向Plist添加新项目时:plist文件(包外)更新。将按照日志中的说明触发重新加载tableview。但是,实际上并没有从Plist重新加载数据,它只使用现有的(Array)值。除非您退出并重新加载整个应用程序,否则更新的Plist会出现在表格中。

如何让我的表实际上从更新的Plist重新加载而不是仅使用原始数组。

感谢。

我使用此代码从Plist获取数据 - 工作。

 NSMutableArray *rawFavArray = [[NSMutableArray alloc] initWithContentsOfFile:plistPath];

我用它来运行数组来为表格工作创建单元格信息。

 return [favReloadArray objectAtIndex:indexPath.row];

我用它来重新加载表(在viewWillApear中) - 不工作,触发日志,但不重新加载Plist。

 [self.tableView reloadData];

当我尝试更改Plist中的数据时 - 我可以执行此操作,但除非我退出应用程序并重新开始,否则表中不会显示任何更改。

2 个答案:

答案 0 :(得分:1)

在你调用reloadData之前,你应该有 [favReloadArray release]; favReloadArray = [[NSMutableArray alloc] initWithContentsOfFile:plistPath];

favReloadArray = [NSMutableArray arrayWithContentsOfFile:plistPath];
取决于您首先创建favReloadArray的方式。

答案 1 :(得分:0)

myArray = [NSArray arrayWithContentsOfFile:myFilePath];