我有一个组样式的UITableView,我正在使用它与导航控制器。 当用户点击单元格时,我正在推送到另一个视图供用户进行选择,而所有这些都正常工作。我想让用户在用户做出选择时返回到第一个视图。我想在单元格上显示他们的选择。
提前感谢您的帮助
答案 0 :(得分:1)
我认为你可以使用NSUserDefaults。
// view controller to make selection
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
NSString *selected;
if (indexPath.row == 0) {
selected = @"Apple";
} else if (indexPath.row == 1) {
selected = @"Microsoft";
}
[[NSUserDefaults standardUserDefaults] setObject:selected forKey:@"SELECTED"];
[self.navigationController popViewControllerAnimated:YES];
}
重点是你需要在viewDidAppear中调用[self.tableView reloadData]。
// view controller to show what a user selected
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[self.tableView reloadData];
}
- (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] autorelease];
}
// Configure the cell.
cell.textLabel.text = @"Choice";
cell.detailTextLabel.text = [[NSUserDefaults standardUserDefaults] objectForKey:@"SELECTED"];
return cell;
}