我需要創建一個顯示四個UILabel
實例的自定義UITableViewCell
。故事板中自定義UITableViewCells的問題
在這個自定義單元格的實施,我有以下初始化代碼:
- (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)];
細胞,我寧願在我的故事板中做到這一點。如果我將一個標籤粘貼在我的故事板中的細胞,並將其連接到下面相應的屬性:通過寫作
@property (nonatomic) IBOutlet UILabel *positionLabel;
,並創建我的標籤:
self.positionLabel = [[UILabel alloc] init];
我希望看到一個標籤在我的單元格中運行我的應用程序時,但這並未發生。有沒有人有任何洞察到我失蹤/不理解?謝謝!
這很有道理@dasdom,謝謝。我把事情放在'initWithStyle:reuseIdentifier'中的原因是,當我將標籤添加到故事板時,它根本不會顯示出來。 – narner
使用'dequeueReusableCellWithIdentifier:forIndexPath:'並確保使用相同的單元標識符。 – dasdom
@dasom得到它的工作,謝謝! – narner