1

Я пытаюсь создать табличное представление с настраиваемыми ячейками.IBOutlet не инициируется

Я создал 2 файла .m и .h, которые относятся к моему классу CustomCell. Вот код:

#import <UIKit/UIKit.h> 

@interface CustomCell : UITableViewCell 
{ 
    IBOutlet UIImageView *miniLogo; 
    IBOutlet UILabel *cellText; 
    IBOutlet UIButton *deleteButton; 
} 

@property (strong, nonatomic) IBOutlet UIImageView *miniLogo; 
@property (strong, nonatomic) IBOutlet UILabel *cellText; 
@property (strong, nonatomic) IBOutlet UIButton *deleteButton; 

@end 

------------------------------------------------------------- 

#import "CustomCell.h" 

@implementation CustomCell 


@synthesize miniLogo,cellText, deleteButton; 

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier 
{ 
    self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]; 
    if (self) { 
     // Initialization code 
    } 
    return self; 
} 

-(void)layoutSubviews{ 
    [super layoutSubviews]; 
} 

/* 
- (void)setSelected:(BOOL)selected animated:(BOOL)animated 
{ 
    [super setSelected:selected animated:animated]; 

    // Configure the view for the selected state 
}*/ 

@end 

С файлом .xib, я разработал свою камеру, и соединил IBOutlets и установить идентификатор для ячейки.

В таблице с моими индивидуальными клетками, я называю клетки в методе Tableview: cellForRowAtOndexPath: как это:

CustomCell *cell = (CustomCell *)[tableView dequeueReusableCellWithIdentifier:CellsIdentifier ]; 
    if (cell == nil){ 
     UIViewController *tempVC = [[UIViewController alloc] initWithNibName:@"CustomCell" bundle:nil]; 
     cell = (CustomCell *)tempVC.view; 
    } 

Когда я запускаю мое приложение, ярлыки отображаются тексты, установленных и взгляды изображения показать правильные изображения. Но кнопки не отображаются. Фактически, при настройке точек останова я видел, что адрес для моих кнопок всегда равен 0x00000000 (это означает, что мои кнопки не запускаются).

Может кто-нибудь помочь мне решить эту проблему, пожалуйста.

+0

Вы уверены, что подключили выход deleteButton в свою IB? –

+0

Выньте их из интерфейса. Вы не нуждаетесь в том, чтобы они были синтезированы и автосинтезированы. –

+0

Моя кнопка хорошо связана с моим .h-файлом. Я удалил свой IBOutlet в интерфейсе, но никаких изменений .... – zbMax

ответ

1

Я нашел проблему.

В он viewDidLoad я делал:

UINib *cellNib = [UINib nibWithNibName:@"myCells" bundle:nil]; 
    [self.tableView registerNib:cellNib forCellReuseIdentifier:CellsIdentifier]; 

Но потому, что я изменил свое имя .xib, я не загружал правильный интерфейс. Странно, что у меня нет ниба под названием «myCells». Может быть, я должен был выполнить «чистый» на моем проекте ...