Loading

IOS:tableViewCell改变编辑状态的渲染色,以及防止cell上的子控件不受影响

tableView一开始背景是白的,编辑状态下选中,会有层淡淡的蓝色,这个好像是系统默认的

深色背景下,选中时泛白。本来深色背景下,cell上的控件的字体都设定为了白色,这样一来都有些看不见了。

为了解决这个问题,在网上搜了下,cell.selectstyle=XX这个已经过时了。

 

可以在自己定义的cell类里,继承UITableViewCell,然后重写setselect方法

在setselect方法里写

self.selectedBackgroundView=[UIView new];

self.selectedBackgroundView.backgroundColor=XXX;

 

这样就可以根据自己的要求来改变tableview的编辑状态选中时的颜色了

然后可能会导致一个问题,比如cell上面有imageview控件,你会发现这样点击时imageview的背景颜色变为其它颜色

可以在自定义的cell类加上一个方法

-(void)layoutSubviews{

[super layoutSubviews];

xx.backgroundColor=XX;

}

这里设置为你想显示的正常的颜色。

这样就解决了点击tableview引发cell上子控件变色的问题。

posted @ 2020-08-27 10:57  DDD-SagerKing  阅读(218)  评论(0)    收藏  举报