Ios UITableViewCell的详细文本标签在用户触摸它之前是不可见的
我在静态和分组表视图中设置了UITableViewCell。单元格的样式是subtitle,我将其初始值设置为如下(无论使用哪个单元格,问题都保持不变): 或者像这样:Ios UITableViewCell的详细文本标签在用户触摸它之前是不可见的,ios,objective-c,uitableview,tableview,Ios,Objective C,Uitableview,Tableview,我在静态和分组表视图中设置了UITableViewCell。单元格的样式是subtitle,我将其初始值设置为如下(无论使用哪个单元格,问题都保持不变): 或者像这样: self.myCell.detailTextLabel.text = @"not set"; 细胞的detailTextLabel是看不见的,直到我把手指放在它上面,我甚至不需要松开它,只要把它放在细胞上,它就会变成一点深灰色 我在VIEW中尝试了这两个选项。设置初始单元格文本后,将显示这两个选项,问题保持不变: [self.
self.myCell.detailTextLabel.text = @"not set";
细胞的detailTextLabel是看不见的,直到我把手指放在它上面,我甚至不需要松开它,只要把它放在细胞上,它就会变成一点深灰色
我在VIEW中尝试了这两个选项。设置初始单元格文本后,将显示这两个选项,问题保持不变:
[self.myCell setNeedsLayout];
[self.myCell setNeedsDisplay];
你们知道这是为什么吗?我怎样才能解决它
非常感谢
更新:
正确显示的标签:
显示不正确的标签:
这是一个已知的iOS 8错误,如果字幕以nil开头,它最初不会出现 如果您确保
detailTextLabel
永远不为零(或空),即使在情节提要中,它也应该始终在最初出现
如果某些单元格没有字幕,则需要将其设置为空白,而不是零,否则问题将再次触发
(苹果推出了一项“优化”bug,如果标签看起来没有被使用,它将从superview中删除。因此,对于第一个布局过程,一旦您为其分配了非nil字符串,它将被添加回,以至于无法正确调整大小。与单元格交互会使其高亮显示,这就是为什么标签在该点正确显示。)使用完整的
CellForRowatineXpath
方法更新您的问题。@rmaddy我没有CellForRowatineXpath方法,因为我的tableView是静态的。请检查标签的颜色和单元格的背景色,文本和单元格的textColor和背景色可能相同。当你点击单元格时,它将变为不同的颜色。@deoKaushal我现在将颜色设为红色,仍然是相同的问题:/
[self.myCell setNeedsLayout];
[self.myCell setNeedsDisplay];