Раскадровка и CustomCells - PullRequest
       4

Раскадровка и CustomCells

4 голосов
/ 16 сентября 2011

Я новичок в Objective-C и пытаюсь создать собственные ячейки. В раскадровке (под Xcode 4.2) я нажимаю TableViewController. В этом контроллере я показываю несколько простых ячеек, но теперь я хочу настроить их. (В более старых версиях Xcode я использовал что-то вроде этого:

if (cell == nil) {
        NSArray * topLevelObjects = [[NSBundle mainBundle] loadNibNamed:@"MyNib" owner:nil options:nil];
        for(id currentObject in topLevelObjects) {
            if([currentObject isKindOfClass: [UITableViewCell class]]) {
                cell = (detailViewCell *) currentObject;
                break;
            }
        }
    }

для загрузки пользовательских ячеек, но теперь это больше не работает, потому что я получаю ошибку, что Nibfile "MyNib" не найден, конечно ... потому что я использую раскадровку ... но как я могу это исправить тот? Как я могу загрузить CustomCell из раскадровки?

РЕДАКТИРОВАТЬ: "ха-ха, я такой идиот .. решил проблему самостоятельно.

static NSString *CellIdentifier = @"detailsViewCell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];

Я думал, что эти строки создают новую стандартную ячейку с идентификатором "detailsViewCell", поэтому я еще не изменил это на свой пользовательский идентификатор ячейки, но да, вместо этого они загружают мою созданную пользовательскую ячейку. :) теперь все работает хорошо! «

1 Ответ

5 голосов
/ 11 марта 2012

вам больше не нужно создавать из Nib, просто позвоните dequeueReusableCellWithIdentifier и вернете нужную ячейку.Но сначала вам нужно будет создать новый класс для вашей пользовательской ячейки.

Найден вводный видеоролик для вас, Проверьте это

...