Вопрос по AdvancedTableViewCells от Apple - PullRequest
2 голосов
/ 16 января 2010

Я смотрю на пример проекта Apple "AdvancedTableViewCells" и, глядя на RootViewController, я заметил загрузку пера для IndividualSubviewsBasedApplicationCell. Я задавался вопросом о том, что загрузка пера ... во что это загружается? Нет дескриптора / переменной. Я понимаю строки ниже, где ячейка назначена представлению через IBOutlet, но я не понимаю строку: [[NSBundle mainBundle] loadNibNamed:@"IndividualSubviewsBasedApplicationCell" owner:self options:nil];

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"ApplicationCell";

    ApplicationCell *cell = (ApplicationCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    if (cell == nil) {

#if USE_INDIVIDUAL_SUBVIEWS_CELL
        [[NSBundle mainBundle] loadNibNamed:@"IndividualSubviewsBasedApplicationCell" owner:self options:nil];
        cell = tmpCell;
        self.tmpCell = nil;

1 Ответ

3 голосов
/ 16 января 2010

См. Статью Джеффа Ламарша Ячейки табличного представления в Интерфейсном Разработчике - Apple Way ™ .

В файле NIB IndividualSubviewsBasedApplicationCell «Владелец файла» установлен на RootViewController, а пользовательский UITableViewCell подключен к tmpCell IBOutlet из RootViewController.

В строке:

[[NSBundle mainBundle] loadNibNamed:@"IndividualSubviewsBasedApplicationCell" owner:self options:nil];

... загрузчик пакетов загружает файл NIB и соединяет все выходы. После этого tmpCell IBOutlet теперь указывает на наш пользовательский UITableViewCell.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...