Группа UITableView для выбора - PullRequest
0 голосов
/ 03 февраля 2010

У меня есть UITableView в стиле группы, и я использую его с контроллером навигации.Когда пользователь нажимает на ячейку, я нажимаю на другое представление, чтобы пользователь мог сделать выбор, пока все работает нормально.Я хочу, чтобы пользователь возвращался к первому виду, когда пользователь делает выбор.и я хочу отобразить их выбор в ячейке.

Заранее благодарен за помощь

1 Ответ

1 голос
/ 03 февраля 2010

Я думаю, что вы можете использовать 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];
}

Важный момент: вам нужно вызвать [self.tableView reloadData] в viewDidAppear.

// 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;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...