我有一个带有透明桌面视图的深灰色视图背景。我正在使用以下代码尝试在单击单元格时停止单元格突出显示。除了最初点击单元格时,它才有效,我看到了一个亮点。然后我转换到另一个场景。当我回来时,细胞不会突出显示。
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
var selectedCell:UITableViewCell = tableView.cellForRowAtIndexPath(indexPath)!
selectedCell.contentView.backgroundColor = UIColor.clearColor()
tableView.deselectRowAtIndexPath(indexPath, animated: true)
}
如何禁用仍在进行的初始单元格突出显示?
答案 0 :(得分:8)
设置UITableViewCell选择样式无
cell.selectionStyle = .None
答案 1 :(得分:3)
<ul class="nav">
<li class="top"><a class="top_link">Grades</a>
<ul class="sub">
<li><a class="fly">Grade 1</a></li>
</ul>
</li>
</ul>
可能有处理细胞突出显示的方法
您正在寻找.nav {
list-style: none;
position: relative;
}
.nav ul {
visibility: hidden;
opacity: 0;
transition-property: visibility, opacity;
-moz-transition-property: visibility, opacity;
-webkit-transition-property: visibility, opacity;
transition-timing-function: linear;
-moz-transition-function: linear;
-webkit-transition-function: linear;
transition-duration: 0s, 0.5s;
-moz-transition-duration: 0s, 0.5s;
-webkit-transition-duration: 0s, 0.5s;
transition-delay: 0.5s, 0s;
-moz-transition-delay: 0.5s, 0s;
-webkit-transition-delay: 0.5s, 0s;
}
.nav li {
position: relative;
}
.nav li.top {
float: left;
}
.nav li a.top_link {
float: left;
height: 36px;
}
.nav ul {
position: absolute;
visibility: hidden;
}
.nav li:hover > ul {
visibility: visible;
opacity: 1;
transition-duration: 0s;
-moz-transition-duration: 0s;
-webkit-transition-duration: 0s;
transition-delay: 0s;
-moz-transition-delay: 0s;
-webkit-transition-delay: 0s;
}
.nav li ul.sub {
background: #fff;
white-space: nowrap;
left: 0;
top: 100%;
}
检查documentation以了解其他方法
答案 2 :(得分:3)
我发现其他答案对我不起作用,因为他们需要双击才能选择。这确实有用。
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
tableView.deselectRow(at: indexPath, animated: true)
答案 3 :(得分:2)
阻止突出显示的最简单方法是将selectionStyle
设置为None
。以下是您如何实现这一目标:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
var cell:UITableViewCell = self.tableView.dequeueReusableCellWithIdentifier("cell") as UITableViewCell
cell.selectionStyle = .None
return cell
}