我有splitviewcontroller,它包含tableview和detailview。从tablview相关描述中选择的任何项目都将在详细视图中显示。
当用户从tableview中选择任何单元格时,我在detailview中加载了相应的视图,并且还有另一个功能,每个detailview都有一个“NEXT”按钮,允许用户导航到下一个视图。这意味着当用户按下下一个按钮时,如果当前选择的单元格没有。是2,然后它将选择第3个单元格并加载第3个detailview。我的问题是iPad1和iPad2上的一切都很顺畅。但是在Retina显示器iPad3中,当我在第一个单元格中并按下“下一步”按钮时,我移动到第二个单元格和相关的详细视图,那时我的第一个单元格文本标签变为白色,如图所示。 如果你看得对,你也可以看到单元格“位置”的标题。
以下是用户按下NEXT按钮时使用的代码。
NSIndexPath *ipath = [NSIndexPath indexPathForRow:MenuCustmerInfoRow inSection:MenuSection];
[rvc.tableView selectRowAtIndexPath:ipath
animated:NO
scrollPosition:UITableViewScrollPositionNone];
这可能是什么原因?这只发生在iPad 3中,这只发生在tableview的第一个单元格中,所有其他单元格都运行良好。
任何帮助都会受到很大关注!
感谢
尼尔
答案 0 :(得分:0)
我要提交一个Apple bug,但问题是,文本标签的背景在取消选择时变为白色,所以这样做
-(void)tableView:(UITableView *)tableView didDeselectRowAtIndexPath:(NSIndexPath *)indexPath {
UITableViewCell *cell = [tableView cellForRowAtIndexPath:indexPath];
//forced clear color due to textlabel turning white after deselect
[cell.textLabel setBackgroundColor:[UIColor clearColor]];
}