UITableViewCell在编辑状态下背景颜色的修改方法

发布时间 - 2026-01-11 02:08:35    点击率:

本文主要介绍的是关于UITableViewCell在编辑状态下背景颜色的修改方法,分享出来供大家参考学习,下面来一起看看详细的介绍:

一、先看下效果图


二、网上很多下面这种答案

UITableViewCell * cell = [tableView cellForRowAtIndexPath:indexPath];
cell.selectionStyle = UITableViewCellSelectionStyleNone;

这样设置,蓝色的选中图标也不会出现.

这种仅限于不编辑的时候,让TableViewCell没有灰色高亮.

三、具体实现:

(1).在创建cell的时候设置selectedBackgroundView

RealTimeControlTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:cellId];

if (cell == nil) {
 cell = [[RealTimeControlTableViewCell alloc]initWithStyle:UITableViewCellStyleValue1 reuseIdentifier:cellId];
 cell.contentView.backgroundColor = [UIColor clearColor];
 UIView *backGroundView = [[UIView alloc]init];
 backGroundView.backgroundColor = [UIColor clearColor];
 cell.selectedBackgroundView = backGroundView;
}

(2).自定义一个UITableVIewCell重写

- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
if (!self.editing) {
 return;
}
[super setSelected:selected animated:animated];

if (self.editing) {
 self.contentView.backgroundColor = [UIColor clearColor];
 self.textLabel.backgroundColor = [UIColor clearColor];
 self.detailTextLabel.backgroundColor = [UIColor clearColor];
}
}

(3)还要重写下面方法 因为在长按cell的时候也会高亮,出现灰色的背景

-(void)setHighlighted:(BOOL)highlighted animated:(BOOL)animated{
 return;
}

对上面第二步代码说明:

1.在非编辑状态下,默认不会出现选中效果,直接return.

return 以后还是会继续调用

-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
 在这里处理cell的点击事件
}

2.要实现选中的蓝色图标出现,以及添加cell到选中cell的数组.

调用系统的默认方法

[super setSelected:selected animated:animated];

3.在编辑状态下修改cell的contenView为clear,清除选中时候的灰色背景.

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如有疑问大家可以留言交流,谢谢大家对的支持。


# uitableviewcell  # 样式  # ios  # IOS UITableView和UITableViewCell的几种样式详细介绍  # IOS UITableViewCell详解及按钮点击事件处理实例  # 全面解析iOS应用中自定义UITableViewCell的方法  # 详解ios中自定义cell  # 自定义UITableViewCell  # iOS App开发中使用及自定义UITableViewCell的教程  # 详解IOS UITableViewCell 的 imageView大小更改  # 详解iOS tableViewCell自适应高度 第三发类库  # iOS中使用UItableviewcell实现团购和微博界面的示例  # iOS优化UITableViewCell高度计算的一些事儿  # 你应该知道的tableViewCell行高计算处理  # 重写  # 状态下  # 的是  # 在这里  # 也会  # 如有  # 自定义  # 这篇文章  # 谢谢大家  # 第二步  # 先看  # 网上  # cellForRowAtIndexPath  # indexPath  # cell  # cpp  # brush  # tableView  # RealTimeControlTableViewCell  # selectedBackgroundView 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在 Telegram Web View(iOS)中防止键盘遮挡底部输入框  桂林网站制作公司有哪些,桂林马拉松怎么报名?  Python文件异常处理策略_健壮性说明【指导】  Laravel怎么使用Blade模板引擎_Laravel模板继承与Component组件复用【手册】  Laravel如何连接多个数据库_Laravel多数据库连接配置与切换教程  公司网站制作价格怎么算,公司办个官网需要多少钱?  Laravel如何处理CORS跨域请求?(配置示例)  深圳网站制作公司好吗,在深圳找工作哪个网站最好啊?  Laravel怎么上传文件_Laravel图片上传及存储配置  Laravel如何实现数据导出到CSV文件_Laravel原生流式输出大数据量CSV【方案】  黑客如何通过漏洞一步步攻陷网站服务器?  Laravel如何处理异常和错误?(Handler示例)  简单实现jsp分页  Laravel模型事件有哪些_Laravel Model Event生命周期详解  Laravel请求验证怎么写_Laravel Validator自定义表单验证规则教程  百度输入法全感官ai怎么关 百度输入法全感官皮肤关闭  作用域操作符会触发自动加载吗_php类自动加载机制与::调用【教程】  使用豆包 AI 辅助进行简单网页 HTML 结构设计  Laravel如何自定义分页视图?(Pagination示例)  Laravel如何使用.env文件管理环境变量?(最佳实践)  EditPlus 正则表达式 实战(3)  如何在建站之星绑定自定义域名?  jimdo怎样用html5做选项卡_jimdo选项卡html5实现与切换效果【指南】  网易LOFTER官网链接 老福特网页版登录地址  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  如何用AI一键生成爆款短视频文案?小红书AI文案写作指令【教程】  如何快速选择适合个人网站的云服务器配置?  Android自定义listview布局实现上拉加载下拉刷新功能  Swift中循环语句中的转移语句 break 和 continue  Laravel怎么实现搜索功能_Laravel使用Eloquent实现模糊查询与多条件搜索【实例】  Angular 表单中正确绑定输入值以确保提交与验证正常工作  如何用PHP工具快速搭建高效网站?  教你用AI将一段旋律扩展成一首完整的曲子  成都品牌网站制作公司,成都营业执照年报网上怎么办理?  Python制作简易注册登录系统  瓜子二手车官方网站在线入口 瓜子二手车网页版官网通道入口  青岛网站建设如何选择本地服务器?  如何挑选优质建站一级代理提升网站排名?  百度输入法ai组件怎么删除 百度输入法ai组件移除工具  Laravel如何构建RESTful API_Laravel标准化API接口开发指南  javascript基本数据类型及类型检测常用方法小结  如何在服务器上配置二级域名建站?  如何制作新型网站程序文件,新型止水鱼鳞网要拆除吗?  制作电商网页,电商供应链怎么做?  laravel怎么实现图片的压缩和裁剪_laravel图片压缩与裁剪方法  如何在阿里云通过域名搭建网站?  Laravel如何安装Breeze扩展包_Laravel用户注册登录功能快速实现【流程】  高防服务器租用首荐平台,企业级优惠套餐快速部署  如何用美橙互联一键搭建多站合一网站?  javascript中对象的定义、使用以及对象和原型链操作小结