2013-05-16 3 views
0

Я создал пользовательский tableviewcell. Класс имеет 3 метки. Используя шаблон контроллера главного представления, чтобы начать работу, я изменил таблицу tableview по умолчанию в своем раскадровке, чтобы ссылаться на мою новую пользовательскую ячейку, я также изменил тип на пользовательский и идентификатор на «CustomTableCell». Я также изменил мой метод cellForRowAtIndexPath к следующему ...Custom tableviewcell не отображается

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    NSString *cellIdentifier = @"CustomTableCell"; 

    CustomTableCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier]; 
    if (!cell) 
    { 
     cell = [[CustomTableCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier]; 
    } 

    Item *currentItem = _objects[indexPath.row]; 
    cell.nameLabel.text = [currentItem name]; 
    cell.vegLabel.text = @"V"; 
    return cell; 
} 

CUSTOM CELL Заголовочный файл

#import <UIKit/UIKit.h> 

@interface CustomTableCell : UITableViewCell 

@property (nonatomic, weak) IBOutlet UILabel *nameLabel; 
@property (nonatomic, weak) IBOutlet UILabel *vegLabel; 
@property (nonatomic, weak) IBOutlet UILabel *priceLabel; 

@end 

Eveything, кажется, правильно подключен в моем раскадровки. Когда я отлаживаю, я вижу, что у ячейки есть свойства моей пользовательской ячейки. Тем не менее, когда я запускаю приложение, каждая строка пуста. Tableviewcell использует правильный идентификатор в доске объявлений. Я просто не вижу, что мне не хватает. Любая помощь будет оценена по достоинству. Благодарю.

Identifier in storyboard Connections in storyboard

+0

У вас есть ответ? –

ответ

1

Вы не загружая пользовательские ячейки из mainbundle. Поэтому вам нужно загрузить его.

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath 
{ 
    NSString *cellIdentifier = @"CustomTableCell"; 

    CustomTableCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier]; 

    // Add this line in your code 
    cell = [[[NSBundle mainBundle]loadNibNamed:@"CustomTableCell" owner:self options:nil]objectAtIndex:0]; 

    if (!cell) 
    { 
     cell = [[CustomTableCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:cellIdentifier]; 
    } 

    Item *currentItem = _objects[indexPath.row]; 
    cell.nameLabel.text = [currentItem name]; 
    cell.vegLabel.text = @"V"; 
    return cell; 
} 
+0

Я не пользуюсь перьями. Я использую рассказ. Когда я попытался, у меня возникла ошибка, говоря, что он не мог загрузить нить. Я воссоздал собственный класс ячеек с другим именем, подключил его и теперь работает. Я до сих пор не знаю, почему этого не случилось. – BON

+0

Я не умею разбираться в раскадровке. Простите за это моя дорогая .. –