为啥我的自定义表格单元格中的标签在单击行之前无法显示
Posted
技术标签:
【中文标题】为啥我的自定义表格单元格中的标签在单击行之前无法显示【英文标题】:Why is the label in my custom table cell can not show until clicked on the row为什么我的自定义表格单元格中的标签在单击行之前无法显示 【发布时间】:2013-12-26 02:11:14 【问题描述】:我需要实现的是一个自定义表格视图单元格,它在单元格的另一侧有一个附加标签。
我做以下事情。
1.拖一个UILabel到Cell的contentView如下。
2.创建一个名为 NoteTableCell 的自定义表格单元类扩展 UITableViewCell 类
3.将NoteTableCell类中名为“timeLabel”的IBOutlet连接到Label。
4.在tableView:cellForRowAtIndexPath:方法中,
static NSString *CellIdentifier = @"Cell";
NoteTableCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
// Configure the cell...
if(cell == nil)
cell = [[NoteTableCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
Note * note = [notelist objectAtIndex:indexPath.row];
cell.textLabel.text = note.title;
cell.timeLabel.text = note.time; //set the timeLabel
return cell;
每次我创建一个新笔记并返回时,标签内容直到我选择行才显示,我在这里错过了什么吗?
【问题讨论】:
你可以暂时使用 cell.textLabel.text = @"xyz";并查看您的所有行都填充了这个 xyz !如果您仍然遇到同样的问题,请更改 cell.textlabel.textColor = [UIColor blackColor];试试这个,让我知道。 当你“创建一个新笔记并返回”时,你需要提供更多关于你在做什么的细节。您发布的代码没有任何问题。 实际上,我正在创建一个与 Iphone 上预装的应用程序相同的应用程序“Notes”。所以每次我使用详细视图创建一个新的 Note 并通过导航控制器返回到表视图时。我们可以在行单元格中看到注释标题并创建时间。我正在使用委托将笔记数据传回。我很确定数据没有问题。但是在我选择行之前,额外的 timeLabel 无法显示 @Vish。这与默认单元格 textLabel 无关。默认单元格 textLable 很好。但是我添加的标签有问题。即使按照您的建议更改颜色也无法解决 好的,所以我不能要求代码,但您可以与本教程进行比较并找出代码中的问题 zhttp://www.verious.com/article/using-xcode-storyboards -to-build-dynamic-table-views-with-prototype-table-view-cells/ 。让我知道所有最好的 【参考方案1】:试试这个:
if(cell == nil)
cell = (NoteTableCell *)[[[NSBundle mainBundle] loadNibNamed:@"NoteTableCell" owner:self options:nil] lastObject];;
【讨论】:
我没有使用任何 nib 文件,我使用的是故事板【参考方案2】:我想你可能设置单元格背景颜色等于标签文本颜色,所以你看不到它。当触摸单元格时,单元格背景颜色改变,你看到文字。
【讨论】:
谢谢。但我不这么认为,我只是使用默认配置。单元格背景颜色为白色,文本颜色为黑色。【参考方案3】:您是否在情节提要中创建了单元原型,并为其指定了“单元”标识符? (C 大写,其余字母小写)
【讨论】:
以上是关于为啥我的自定义表格单元格中的标签在单击行之前无法显示的主要内容,如果未能解决你的问题,请参考以下文章
swift UIViewController用于自定义单元格中的按钮
Obj-C - 点击自定义表格视图单元格中的删除表格视图行按钮