我已经在我的自定义 UITableViewCell 类中覆盖了 setHighlight。但是,我并不总是想使用它。我怎样才能防止它被使用?
Posted
技术标签:
【中文标题】我已经在我的自定义 UITableViewCell 类中覆盖了 setHighlight。但是,我并不总是想使用它。我怎样才能防止它被使用?【英文标题】:I've overrode setHighlight in my custom UITableViewCell class. However, I don't always want to use it. How can I prevent from it being used? 【发布时间】:2015-06-29 03:41:32 【问题描述】:我在自定义 uitableviewcell 的 -setHighlighted 方法中为自定义单元格着色。效果很好。
但是,我有一些控制器想要使用它,而其他一些我根本不想要任何突出显示。
当我覆盖setHighlight
时,设置单元格的.selectionStyle = UITableViewCellSelectionStyleNone
不起作用。
我怎样才能做到这一点?
【问题讨论】:
【参考方案1】:您可以使用UITableViewDelegate
s -tableView:shouldHighlightRowAtIndexPath:
。
【讨论】:
【参考方案2】:你可以尝试在 setHighlighted 中检查self.selectionStyle
,如果self.selectionStyle == UITableViewCellSelectionStyleNone
,则使用 super 方法。
【讨论】:
我试过了。不幸的是,我需要“无”才能使用自定义 setHighlighted 覆盖。 你尝试重写- (void)layoutSubviews;
吗?以上是关于我已经在我的自定义 UITableViewCell 类中覆盖了 setHighlight。但是,我并不总是想使用它。我怎样才能防止它被使用?的主要内容,如果未能解决你的问题,请参考以下文章
来自 .xib 文件的自定义 UITableViewCell
我的自定义 UITableViewCell 表格单元格显示为项目的空白列表