如何在单元格中显示变量

How to display variables in cell

我正在尝试获取 table 视图来显示数组中的数据。

错误显示

Use of Unidentifiable identifier tableItems

这里是tvc的实现文件:

@interface IDTVC ()
@property NSMutableArray *tableItems;

@end

@implementation IDTVC
-(void)loadInitialData {
    IDModel *item1 = [[IDModel alloc] init];
    item1.name = @"Hamburger";
    item1.sub = @"test";
    //identify image here
    item1.pic =@"pic.png";
    [self.tableItems addObject:item1];
    IDModel *item2 = [[IDModel alloc] init];
    item2.name = @"Cheeseburger";
    item2.sub = @"test";
    item2.pic =@"pic.png";
    [self.tableItems addObject:item2];
    IDModel *item3 = [[IDModel alloc] init];
    item3.name = @"Hot Dog";
    item3.sub = @"test";
    item3.pic =@"pic.png";
    [self.tableItems addObject:item3];
}


- (void)viewDidLoad {
    [super viewDidLoad];
    self.tableItems = [[NSMutableArray alloc] init];
    [self loadInitialData];
 }

static NSString *protoCell = @"Cell";
- (UITableViewCell *)tableView:(UITableView *)tableView
         cellForRowAtIndexPath:(NSIndexPath *)indexPath {
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:protoCell forIndexPath:indexPath];
// Configure the cell...

//RED ERROR IN FOLLOWING LINE
    cell.textLabel.text = [tableItems.name objectAtIndex:indexPath.row];    
    //    cell.textLabel.text = @"head";
      cell.detailTextLabel.text = @"sub";

    return cell;
}

tableItems 数组中获取名称并将其分配给 labelText 的适当语法是什么?

如有任何建议,我们将不胜感激。

应该是_tableItemsself.tableItems。您在其他方法中正确使用它,但在 UITableView 委托方法中不正确。另外,如果启用 ARC,则将 tableItems 属性 strong 设置为:

@property (nonatomic, strong) NSMutableArray *tableItems;

为 UITableViewCell 创建子类 'MyCustomCell' 并在其中添加属性。

在您的 .h 文件中

@interface MyCustomCell : UITableViewCell

@property (strong, nonatomic) UILabel *myTitle;
@property (strong, nonatomic) UILabel *detailTitle;

@end

在您的 .m 文件中

-(id)initWithCoder:(NSCoder *)aDecoder
{
    if(self = [super initWithCoder:aDecoder]) {

        _myTitle = [[UILabel alloc] init];
        _detailTitle = [[UILabel alloc] init];

        [self.contentView addSubview:_myTitle];
        [self.contentView addSubview:_detailTitle];

    }

    return self;
}

在您的 UITableViewController 中添加导入您的自定义子类

在 UITableViewController 中为您的姓名和子项创建 NSString 属性

#import "MyCustomCell"

@属性(强,非原子)NSString *name;

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {


    static NSString *requestCell = @"myCell";

    MyCustomCell *cell;


    cell = [tableView dequeueReusableCellWithIdentifier:requestCell forIndexPath:indexPath];

    cell.myTitle.frame = CGRectMake(105, 0, self.view.frame.size.width - 155, 50);
    cell.detailTitle.frame = CGRectMake(105, 50, self.view.frame.size.width - 110, 15);

    cell.myTitle.text = _tableItems.name;
    cell.detailTitle.text = _tableItems.sub;  

    return cell;
}

***未测试