gpt4 book ai didi

uitableview - swift : Single Selection with UITableViews

转载 作者:行者123 更新时间:2023-11-28 07:08:25 29 4
gpt4 key购买 nike

我有一个启用单选的常规 UITableView。我的问题是,如果用户选择多行,那么原始行将保持选中状态。我还有一个问题,无论我是否设置 cell.selectionStyle = UITableViewCellSelectionStyle.Blue

我的 View Controller 在 Storyboard 中定义。

表格 View

  • 内容:动态原型(prototype)
  • 选择:单选
  • 在触摸 [X] 时显示选择
  • 背景:黑色
  • 索引行限制:0

表格单元格 View

  • 风格:自定义
  • 选择:蓝色
  • 背景:黑色

下面是一些截图:

selection 1 selection 2

这是我的代码:

class AreaViewController: UITableViewController
{

override func viewDidLoad()
{
super.viewDidLoad()
self.tableView.backgroundColor = backgroundColour
}


override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
let cell = tableView.dequeueReusableCellWithIdentifier("areacell", forIndexPath: indexPath) as! UITableViewCell
cell.selectionStyle = UITableViewCellSelectionStyle.Blue

cell.textLabel?.text = "Cell Contents"
cell.textLabel?.textColor = UIColor.whiteColor()

return cell
}

override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath)
{
let cell = tableView.dequeueReusableCellWithIdentifier("areacell", forIndexPath: indexPath) as! UITableViewCell

}
}

我一定遗漏了一些明显的东西,但我没能看到任何不标准的东西。

最佳答案

来自UITableViewCell Class Reference

UITableViewCellSelectionStyleBlue The cell has a default background color when selected.

In iOS 7, the selection color is no longer blue. Use UITableViewCellSelectionStyleDefault instead.

如果你想为选定的单元格设置特殊的背景颜色,你必须设置单元格的 backgroundView:

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("myCell", forIndexPath: indexPath) as! UITableViewCell

// Configure the cell...
let backgroundView = UIView()
backgroundView.backgroundColor = UIColor.redColor()
cell.selectedBackgroundView = backgroundView

return cell
}

看起来像这样:

enter image description here

关于uitableview - swift : Single Selection with UITableViews,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29576900/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com