【问题标题】:Randomly UITableViewCell getting dark black selection color随机 UITableViewCell 获得深黑色选择颜色
【发布时间】:2015-10-18 13:24:21
【问题描述】:

在我的应用程序中,我有几个表视图,在这些表视图中选择时应用程序来回导航。有时在任何 tableview 上选择一个单元格会将选择颜色从默认灰色变为深黑色,它随机发生意味着单元格一次显示黑色,其他时间显示灰色。我不知道为什么会这样,请提出可能是什么原因。这是 iOS 错误吗?

截图如下:

【问题讨论】:

  • 检查我编辑的答案
  • 检查我已编辑的答案 –

标签: ios objective-c uitableview selection


【解决方案1】:

这不是一个bug,它就像一个标记,单元格被选中。

如果您不想.selectionStyle = UITableViewCellSelectionStyleNone 并保留highlight 灰色;

然后您必须取消选择单元格,例如:

Obj-C

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    [tableView deselectRowAtIndexPath:indexPath animated:YES];
}

斯威夫特

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) 
{
    tableView.deselectRowAtIndexPath(indexPath, animated: true)
}

【讨论】:

  • graycolor 没关系,我也在取消选择单元格上的选择并且所有单元格都设置为灰色选择样式,但是为什么随机一些单元格在选择时获得深黑色背景(见图)讨论的重点。
【解决方案2】:

试试这个

在情节提要中选择您的表格点击show the attribute inspector 并取消选择Show Selection on Touch 选项。

在您的didSelectRowAtIndexPath 方法中写入

[tableView deselectRowAtIndexPath:indexPath animated:YES];

在你的cellForRowAtIndexPath写下

cell.selectionStyle = UITableViewCellSelectionStyleNone;

希望对你有帮助。

【讨论】:

  • 是的,没有深色选择,但是,现在我遇到了另一个问题,当我返回表格视图时,单元格保持深色背景。
  • 好的,对于某些表删除丢失,无论如何,谢谢。
  • Opps,我仍然在选择这个。见最后一张照片。
  • 抱歉,如果我将选择样式设置为 UITableViewCellSelectionStyleNone,那么我将无法获得所需的灰色选择。
猜你喜欢
  • 2023-04-02
  • 2014-06-12
  • 1970-01-01
  • 2011-07-07
  • 2014-10-07
  • 2012-08-24
  • 2017-03-29
  • 2015-08-16
  • 1970-01-01
相关资源
最近更新 更多