何刷新视图和表格视图,并在加载时选中默认设置单元?
Posted
技术标签:
【中文标题】何刷新视图和表格视图,并在加载时选中默认设置单元?【英文标题】:Ho to refresh view and tableview, and checkmark a default setting cell on load? 【发布时间】:2013-10-14 05:29:51 【问题描述】:我目前正在 ios 中设置我的第一个应用程序的“设置/首选项”端。我目前有 NSUserdefaults 设置,以便应用记住用户的偏好。我有两个问题:
首先,一旦选择了特定单元格,它就会被选中并保存为默认值(有效),但是当我回到主设置表视图时,我在与它链接的单元格上有一个标签,需要更新但直到我回到主页,然后再次加载设置。刷新设置视图的方法?主页(viewcontroller)也有一个我需要更新的标签。
其次,当要说“带有“kph”或“mph”的测量表视图时。如何使单元格被选中以指示其当前选择的默认值?表视图首选项之一的当前代码如下:
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
// Uncheck the previous checked row
if(self.checkedIndexPath)
UITableViewCell* uncheckCell = [tableView cellForRowAtIndexPath:self.checkedIndexPath];
uncheckCell.accessoryType = UITableViewCellAccessoryNone;
UITableViewCell* cell = [tableView cellForRowAtIndexPath:indexPath];
cell.accessoryType = UITableViewCellAccessoryCheckmark;
self.checkedIndexPath = indexPath;
NSLog(@"cell.textLabel.text = %@",cell.textLabel.text);
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
[defaults setObject:cell.textLabel.text forKey:@"windSpeed"];
[defaults synchronize];
【问题讨论】:
您好,您能以正确的方式解释您的问题吗?因为这里有些东西令人困惑。 要更新单元格上的标签,您必须使用方法 [yourtableview reloadData] 重新加载表格数据; 表示您要根据您的 NSUSerDefault 值更新标签,即选中标记 UITableview 标题 我认为这是一个软件设计问题。你能列举你使用的 UIViewController 子类吗?如果你提供这些,应该很容易回答。 如果快速使用我的视图控制器,并包含有效的 viewWillLoad 方法,但不适用于 tableview 并查看 reloadData,谢谢。还没有制定出单元格复选标记! 【参考方案1】:我猜你需要在 viewWillAppear 中重新加载你的表格
【讨论】:
我试过了,但它不起作用,我最终将填充单元格文本的代码移动到 viewWillAppear 窗口,一切都很好。Thx以上是关于何刷新视图和表格视图,并在加载时选中默认设置单元?的主要内容,如果未能解决你的问题,请参考以下文章
如何在快速向上和向下滚动表格时停止自动重新加载表格视图? [关闭]
目标 C:如何突出显示 tableView 单元格并在重新加载表格时保持突出显示?