在XIB文件中实现自定义UITableViewCell时,空单元格显示在表视图中

时间:2016-02-01 02:35:51

标签: ios objective-c uitableview tableviewcell

我有一个视图控制器MasterCompiledReportViewController,它有一个视图,在该视图中有一个tableview。我有另一个xib文件MasterCompiledReportTableViewCell.xib,它也有自己的类,它是UITableViewCell的子类。

我将xib文件的文件所有者分配给MasterCompiledReportTableViewCell,我还选择了xib文件中的单元格视图,并将类设置为MasterCompiledReportTableViewCell。我也将reuseIdentifier设置为MasterCompiledReportTableViewCell

这是初始化表格的代码:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"MasterCompiledReportTableViewCell";
MasterCompiledReportTableViewCell *cell =  [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[MasterCompiledReportTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }
    cell.lblDeviceName.text = @"Device Name";
    cell.lblTotalAmount.text = @"Total Sales Amount";
    return cell;
}

问题:表格中没有任何数据加载。
附加信息:自定义单元格有2个标签。

修改:我正在设置tableview的出口。

- (void)viewDidLoad {
    [super viewDidLoad];

    self.compiledReportTbl.delegate = self;
    self.compiledReportTbl.dataSource = self;
}

1 个答案:

答案 0 :(得分:0)

试试这个,可能会对你有所帮助: -

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    static NSString *CellIdentifier = @"MasterCompiledReportTableViewCell";
    MasterCompiledReportTableViewCell *cell = [self.tableview dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil)
    {
        [tableView registerNib:[UINib nibWithNibName:@"nibName" bundle:nil] forCellReuseIdentifier:CellIdentifier];
        cell=[tableView dequeueReusableCellWithIdentifier:CellIdentifier];

    }
    cell.lblDeviceName.text = @"Device Name";
    cell.lblTotalAmount.text = @"Total Sales Amount";
    return cell
}