gpt4 book ai didi

ios - Storyboard中自定义 UITableViewCells 的问题

转载 作者:行者123 更新时间:2023-11-28 21:32:00 24 4
gpt4 key购买 nike

我需要创建一个显示四个 UILabel 实例的自定义 UITableViewCell

在这个自定义单元格的实现中,我有以下初始化代码:

- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
// configure labels
self.positionLabel = [[UILabel alloc] initWithFrame:CGRectMake(5, 10, 300, 30)];
self.positionLabel.textColor = [UIColor whiteColor];
self.positionLabel.font = [UIFont fontWithName:@"Helvetica Neue" size:14.0f];

[self addSubview:self.positionLabel];
}
return self;
}

在我的cellForRowAtIndexPath 方法中,我有以下代码

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

CustomUICell *cell = [tableView dequeueReusableCellWithIdentifier:@"CELL"];

if (cell == nil) {
cell = [[CustomUICell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:@"CELL"];

cell.positionLabel.text = @"Test";

}
[cell setBackgroundColor:[UIColor clearColor]];

return cell;
}

但是,与其使用 initWithFrame:CGRectMake(5, 10, 300, 30)]; 创建单元格,我更愿意在 Storyboard中执行此操作。如果我将标签拖到 Storyboard 中的单元格上,并将其连接到适当的属性,如下所示:

@property (nonatomic) IBOutlet UILabel *positionLabel;

并通过编写创建我的标签:

self.positionLabel = [[UILabel alloc] init];

当我运行我的应用程序时,我希望在我的单元格中看到一个标签,但那并没有发生。有没有人对我遗漏/不理解的东西有任何见解?谢谢!

最佳答案

首先,使用 dequeueReusableCellWithIdentifier:forIndexPath: 而不是 dequeueReusableCellWithIdentifier:。在这种情况下,您不需要 if 子句。

关于你的问题:当你在 Storyboard中添加单元格时,你不需要实现 initWithStyle:reuseIdentifier:。事实上,如果您这样做,代码路径将被执行并覆盖您在 Storyboard 中所做的一切。

关于ios - Storyboard中自定义 UITableViewCells 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35637524/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com