我的项目很大,我不确定哪个代码段导致问题,所以我只是描述问题。我的初始视图是UITableView.
此视图有navigation bar
,其中一个按钮是“edit
”按钮。按“编辑”按钮可以进入模态视图控制器,其中还有另一个UITableView。此UITableView
的属性是核对清单table view
(可以选择[已选中]或取消选中多个项目。选择完项目后,它会将所选对象的数组保存到NSUserDefault.
现在,您回到原始页面,您所选择的事物应该显示在UITableView
上。我将正在将UITableView
数据输入的数组更改为数组从NSUserDefaults
抓起来。然后我打电话给[tableView reloadData]
,没有任何变化。我真的很感激任何提示。如果你们认为你知道代码的哪一部分让我感到悲伤,请回复,我会发帖。谢谢(顺便说一句,我知道我应该将view controller
作为delegate
modal view controllers
的主要内容。提前致谢。
答案 0 :(得分:1)
在模态视图控制器中进行更改后调用[[NSUserDefaults standardUserDefaults] synchronize];
。这将保存更改。
每次重新加载表格行时,请务必更新单元格内容。
- (void)configureCell:(UITableViewCell *)cell atIndexPath:(NSIndexPath *)indexPath
{
Bleh *data = (Get your data for this row);
cell.textLabel.text = data.myValue;
cell.imageView.image = data.myImage;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:CellIdentifier];
}
[self configureCell:cell atIndexPath:indexPath];
return cell;
}
答案 1 :(得分:0)
当您从tableview
方法调用返回时,尝试在viewwillappear
上重新加载modelviewcontroller
- (void)viewWillAppear:(BOOL)animated{
[yourTableView reloadData];
}