我在接口(interface)构建器中有一个简单的tableViewCell构建。
它包含一个UIView,其中包含一个图像。
现在,当我选择单元格时,将显示默认的蓝色选择背景,但是UIView的backgroundColor消失了。
我的UITableViewCell的实现文件没有做任何特殊的事情。它只是init的&返回self,而我在setSelected中所做的就是调用super。
如何让我的UIView的backgroundColor时选择的tableView时,说明了什么?
最佳答案
这里的问题是[super]实现
- (void) setSelected:(BOOL) selected animated:(BOOL) animated;
将UITableViewCell中的所有背景色设置为rgba(0,0,0,0)。为什么?也许要让我们所有人都流汗?
并不是整个 View 都消失了(事实证明,如果您更改 View 图层边框属性,这些属性将被保留)
这是触摸单元格所产生的函数调用顺序
所以你的选择是
不幸的是,在setHighlighted中重新声明背景色没有任何作用,因为在第一次调用setSelected之前将所有背景色设置为[r:0 b:0 g:0 a:0]之前,将调用setHighlighted。
//TODO:给出有关如何覆盖setSelected(敬请期待)的详细说明
关于ios - 被选中的UITableViewCell时的UIView的backgroundColor消失,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5222736/