передать объект следующему TableViewController - PullRequest
0 голосов
/ 12 февраля 2010

Я получил контроллер стола. если выбрана ячейка, я выполняю следующее:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {

ablogSingleCatTableViewController *singleCatTableViewController = [[ablogSingleCatTableViewController alloc] initWithStyle:UITableViewStylePlain];

// Push the detail view controller.
[[self navigationController] pushViewController:singleCatTableViewController animated:YES];
[singleCatTableViewController release];
}

Я хочу передать объект следующему контроллеру представления, который вставляется после выбора этой строки. я должен сделать что-то подобное?

ablogSingleCatTableViewController *singleCatTableViewController = [[ablogSingleCatTableViewController alloc] initWithStyle:UITableViewStylePlain];
[singleTableViewController setMyObject:superDuperObject];

или есть более простой способ сделать что-то подобное? Мне нужен этот объект непосредственно после того, как этот tableviewcontroller инициализирован, чтобы заполнить его конкретными данными, которые принадлежат этому объекту.

Пожалуйста, дайте мне несколько советов.

спасибо

1 Ответ

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

Вы также можете передать объект следующему контроллеру вида при запуске контроллера вида.
Для этого вам необходимо реализовать собственный инициализатор для контроллера представления.
Например:

- (id)initWithStyle:(UITableViewStyle)style superDuper:(SuperDuper*)superDuperObject {
    if (self = [super initWithStyle:style]) {
        superDuper = superDuperObject;
    }
    return self;
}

Тогда

ablogSingleCatTableViewController *singleCatTableViewController =
    [[ablogSingleCatTableViewController alloc] initWithStyle:UITableViewStylePlain superDuper:superDuperObject];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...