ios - UITableViewCell,自定义内容不可见

标签 ios uitableview invisible

当我将自定义控件添加到 UITableViewCell 时(通过将 UILabel 拖到 Storyboard中的表格单元格上),内容在运行时是不可见的。当我点击表格行(以选择它)时,内容会出现,但是是白色的。

项目设置:(摘要:使用 UITableView 和几行代码创建超小型 Storyboard 项目):

新项目,单 View 应用程序,Xcode 4.5.2,使用 Storyboard。这将创建一个针对 iOS 6 的项目。

将一个 TableView Controller 拖到 Storyboard上,这将创建一个 View 、它包含的 UITableView 以及该表中的默认 UITableViewCell。

将我的 TableView Controller 设置为初始场景。

为 UITableViewCell 设置一个重用标识符字符串(在 Storyboard编辑器中)。

创建一个新文件,UITableView 的子类,填充一些最少 库存数据内容以获得几行以填充“第 XX 行”数据文本。

运行项目。数据按预期显示,几行数据显示“第 0 行”、“第 1 行”等。没有问题

现在,我将一个标签拖到 Storyboard 中的表格单元格上。我对属性没有任何改变。我留下的标签文本只是用黑色字母写着“标签”。

查看图片:http://www.codexlumen.com/issue/storyboard.png

再次运行项目。

我的期望:我的表格行现在在行中出现了黑色文本的“标签”。

我实际看到的:和以前一模一样。 “标签”文本根本不会出现。

现在,这是有趣的部分:

仍在运行,我点击表格行将其选中。现在该行以蓝色高亮显示,并且“标签”在我放置标签控件的位置以白色出现。

查看图片:http://www.codexlumen.com/issue/hilight.png

所以 UILabel 就在那里,只是没有在非高亮行中绘制...

不知道为什么。

一些其他评论:

  • 我没有使用任何类型的自定义表格单元格子类。
  • 我没有向项目添加任何内容或采取任何上述未提及的步骤。
  • 我没有更改 Storyboard的 UITableView 或 UITableViewCell 对象的属性,除了设置重用标识符字符串并将 UILabel 拖到单元格上
  • 我尝试在我的 4s 和 int 模拟器上运行(模拟器设置为各种设备/操作系统配置)
  • 我试过更改标签属性(黑色背景、绿色文本等)。没有效果。无论我设置什么属性,视觉行为都是相同的(尽管如果我放大文本,“标签”会更大)

这是 100% 的 Storyboard。我没有在代码中创建 UI 对象。代码中对 UI 的唯一引用是填充表格单元格的代码,如下所示:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"MyCell";
    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];

    cell.textLabel.text = [NSString stringWithFormat:@"Line %i", indexPath.row];

    return cell;
}

最佳答案

我看到你的问题了。您在使用自定义单元格时访问标准 UITableViewCell(即 cell.textLabel)的属性。只需杀死第 3 行即可看到差异。我建议您为每个需要的标签创建自己的导出,而不是使用标准的。

关于ios - UITableViewCell,自定义内容不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14373566/

相关文章:

iPhone - 如何对称滚动两个 UITableViews

ios - 在 UITableViewCell 中重复一个标签

iphone - 地址簿检索手机、工作和 iPhone 电话号码

ios - 使用 JS 从 IOS 打印 PDF

ios - swift tableview.scrollToRow() 卡住 ui

android - iOS 中 UI Controller 的可见和隐藏

ios - 创建一个可以快速交互的不可见 View

Oracle:使用不可见列的 MERGE INTO

iphone - 多个ViewController不同的自动旋转需求

ios - Node.js 使用的 websocket 版本是哪个?