防止选择细胞的蓝色背景

时间:2012-05-07 09:18:30

标签: objective-c uitableview

我想删除在触摸桌面视图中的单元格时出现的选择颜色。

在IB中有一个“显示选择”复选框,它什么都不做,从我可以收集到的内容来看,它只是IB中的一个错误。

但是有了     [cell setSelectionStyle:UITableViewCellSelectionStyleNone]; 我可以设置每个单元格。

这也没有做任何事情,所以这就是我被困住的地方,所有文件都说如果我设置了这个属性,它就不会出现,但确实如此。

我在UINavigationController上推送另一个UIViewController,当我回到相关视图时,单元格上的蓝色背景被卡住,直到我碰到另一个。

唯一特别之处在于我在storyboard的帮助下实例化了这个UITableViewController并使用了原型单元格。然后我把它放在UIScrollView中,在多个UITableViewControllers之间进行水平分页。当我这样做时无法访问导航控制器,所以我将UINavigationController传递给UITableView。

很抱歉,我无法将关键字显示为代码,它说我应该按Tab键然后键入$但将光标移动到标记。

3 个答案:

答案 0 :(得分:3)

您可能会尝试像这样设置单元格的selectedBackgroundView

customCell.selectedBackgroundView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"background.png"]];

在委托方法cellForRowAtIndexPath

答案 1 :(得分:1)

您可以使用的代码(例如灰色代码):

cell.selectionStyle = UITableViewCellSelectionStyleGray;

把它放在:

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath

在ViewController中。

答案 2 :(得分:0)

解决方案是在IB中的原型单元格上设置样式。关于原型细胞,很多事情都很奇怪。