ios 修改系统删除按钮的颜色

最近有做一个tableView的编辑事件(删除) ,编辑事件其实不难,我是在

- (NSArray*)tableView:(UITableView *)tableView editActionsForRowAtIndexPath:(NSIndexPath *)indexPath代理方法中实现的, 功能好实现 ,就是滑动出现删除按钮的时候,删除按钮的UI跟要求的不符合,系统默认的是红色背景 白色字体颜色,如图所示:

图1

可是我们UI要求是白色背景,字体为黑色,然后设置了UITableViewRowAction的背景,这里直接拿我工程的代码来做示例了:

图2

可是在设置action字体颜色时发现并没有titleColor这个属性,

图3

然后在网上找了许多方法,均没有实现效果,最后在stackoverflow找到一个方法可以设置:


图5

效果为:

图5

这个方法就是设置UIButton类的外观,但是这个有一个问题就是设置之后工程里面所有的按钮的字体颜色都会改变,可是我想要的只是在当前页面的颜色改变,不需影响其他页面的按钮,这样的话该方法显然就不适合了,最后在查看官方文档的时候发现一个方法:

+ (instancetype)appearanceWhenContainedInInstancesOfClasses:(NSArray> *)containerTypes NS_AVAILABLE_IOS(9_0);

在改变按钮外观的时候设置是改变的哪个类的外观,这样就能满足我们的要求了,

最后代码如下:


图6

效果:


图7

这样的话就实现了改变按钮的样式,也不会影响其他页面的按钮。

如果大家有什么其他方法的话请不吝赐教..

最后如果能帮到大家就点个喜欢吧,*_*

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,303评论 4 61
  • ALuckyLive阅读 253评论 0 0
  • 2017年2月7日 星期二 人最大的困难是认识自己,最容易的也是认识自己。很多时候,我们认不清自己,只因为我们把自...
    zkishi阅读 297评论 0 0
  • 换一个锁锁住一个故事 尘封住一段又一段 或长或短的奔波的岁月 在冰冷的四面墙之间沉淀 被当做垃圾清扫 没有谁无视房...
    读云轩札记阅读 244评论 0 0
  • 2016的最后一天,独自在房间里享受难得的清闲,突然想对过去的一年做个总结,然后为即将到来的17年订个小计划,希望...
    夜猫子007阅读 164评论 0 0