IBOutlet未启动

时间:2013-05-22 15:59:16

标签: objective-c xcode uitableview interface-builder custom-cell

我正在尝试使用自定义单元格制作桌面视图。

我创建了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(意味着我的按钮没有启动)。

请有人帮我解决这个问题。

1 个答案:

答案 0 :(得分:1)

我发现了问题。

在他看来我正在做的事情:

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

但是因为我已经更改了我的.xib名称,所以我没有加载正确的界面。 奇怪的是,我没有任何名为&#34; myCells&#34;的笔尖。 也许我应该做一个&#34;清洁&#34;在我的项目上......