- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 UITableView 的 didSelectRow 方法中,我正在更改 UITableViewCell 的 contentView.backgroundColor ,但我有 2 个部分,当我使用以下内容转换单元格时:
让 selectedCell:UITableViewCell = tableView.cellForRow(at: indexPath)!
并设置 selectedCell.contentView.backgroundColor
代码会更改两个部分的背景颜色。如何仅从 indexPath.section
转换单元格?
根据@rmaddy 的回答更新
当我在 didSelectRow 方法中保存变量 indexPath.row 和 indexPath.section 并使用 willDisplay 单元格或 cellForRow 中的变量来设置 backgroundColor 时,它会在每 8-16-32-64 行上自动设置 backgroundColor。
更新 2:在 cellForRow 我设置这个:
if(indexPath.row == selectedFromIndex && indexPath.section == selectedFromSection){
cell.contentView.backgroundColor = UIColor(red: 0, green: 0, blue: 200, alpha: 0.1)
}else{
cell.backgroundColor = .clear
cell.isSelected = false
}
selectedFromIndex和selectedFromSection是didSelectRowMethod中保存的变量。选择仍然出现在第 8-16-32-64 行...
最佳答案
这与类型转换无关。您只需要一个 if
语句来检查该部分。
if indexPath.section == 0 { // 1 depending on which section you need
// get the cell and set the background color
}
但是当用户滚动时,这将失败。您应该在 didSelectRow
中做的是更新您的数据模型以跟踪哪些行已被选中以及哪些行应该获得不同的颜色背景,然后告诉 TableView 重新加载该行。
然后您在 cellForRowAt
(或 willDisplay:forRowAt:
)中的代码应该使用该数据根据需要设置单元格的颜色。
无论使用哪种方法,请确保根据需要设置或重置背景颜色,因为行会被重用:
// pseudo code:
if row is selected {
cell.backgroundColor = .someSelectedColor
} else {
cell.backgroundColor = .someUnselectedColor
}
关于swift - UITableViewCell 设置多个部分的 contentView backgroundColor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58490682/
我想使用 JavaScript 将 #Content.backgroundColor 更改为 elem.backgroundColor。 这里是 HTML 代码: Btn1 Btn2 Btn3 这是
@implementation AVSuperView - (AVSuperView*)initWithFrame:(CGRect)frame{ if (self = [super initW
这两行 Swift 代码在功能上有区别吗? self.button.layer.backgroundColor = UIColor.whiteColor().CGColor 和 self.button
我正在尝试学习 React.JS,但有些事情让我大吃一惊。 我有这个标题组件: class Header extends Component { render() { return ;
我正在尝试学习 React.JS,但有些事情让我大吃一惊。 我有这个标题组件: class Header extends Component { render() { return ;
我正在尝试为事件添加背景颜色,但没有运气。 $('#calendar').fullCalendar('renderEvent', { id: 1, title: 'hello', start: sel
这是在iOS 9中。我无法设置SKView的背景颜色,它始终以默认的灰色呈现。有没有解决的办法? let frame = CGRect(x: 0, y: 0, width: 200, height:
我正在创建一个 SWRevealView Controller ,每当我使用 self.view.backgroundColor 或实例化一个新的 View Controller 并使用 UIView
我正在尝试向使用 backgroundColor 的层添加高斯模糊。 下面的代码在标题文本周围添加了一个框并且工作正常,我只是想让白色变得模糊。 title.layer.borderColor = U
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 关闭 4 年前。 这个问题是由于打字错误或无法再重现的问题引起的。虽然类似的问题可能是on-topic
为什么在 CSS 中通过 Javascript 更改样式时使用 background-color 不起作用? 这个有效: document.getElementById("circ").style.b
我有下面的 javascript 函数,当一个新文档被添加到列表时,它会闪烁链接的 bg 3 次。 这第一次工作正常,但随后对该函数的调用导致闪烁变得困惑。越叫越怪异的闪烁行为。 我在 IE8 和最新
如果我在属性检查器的图像/ ImageView 中设置图像,则以下后续调用不起作用: picture.backgroundColor = UIColor.greenColor() 如果我在代码中设置图
我正在尝试制作一个网站,但遇到了问题。当我在 Chrome 中运行它时,我得到:“无法设置未定义的属性‘backgroundColor’”。我不明白为什么我会得到这个。我的 var 不是数组(只是一个
我在我的应用程序中使用新的(在 iOS 7 中)UIPopoverController.backgroundColor 设置来根据需要更改弹出框的颜色,但我发现使用此设置会导致每当我打开我的popov
我有以下控制权。我想更改某些事件触发器的背景颜色。我想将此 clrGray 资源设为某些事件点击时的颜色。 我试过以下方法,但没有用:( XAM: CS: //On Some event /
我有以下控制权。我想更改某些事件触发器的背景颜色。我想将此 clrGray 资源设为某些事件点击时的颜色。 我试过以下方法,但没有用:( XAM: CS: //On Some event /
我正在构建一个排序算法可视化工具。这些项目中的每一项都是 div,backgroundColor 设置为白色。 当算法运行时,他将 backgroundColor 设置为橙色以显示哪些项目已更改。 但
我正在尝试更改 OSX 应用程序的标题栏颜色。使用 window!.backgroundColor = .... 有时有效,但其他则无效。或者更具体地说,它有时在运行应用程序时起作用,而不是在其他应用
这是我的问题: var mycss = window.getComputedStyle(myelement); 返回一个 CSSStyleDeclaration 对象: CSSStyleDeclara
我是一名优秀的程序员,十分优秀!