iOS cell自定义左滑/侧滑删除(支持iOS11)

释放双眼,带上耳机,听听看~!

公司最近提出一个需求是侧滑删除需求,很简单,但是给的图是这样的


看到这张图肯定是需要自定义的,因为之前没有自定义侧滑删除按钮过,所以就百度了一番,有许多,但是实际用起来却有很多问题。


结果一

自定义cell

这种方法只能适用于iOS 11以前的版本,而且有个bug,就是左滑菜单收起来的时候,背景图片会有闪一下的bug。

结果二

自定义cell2.0

这个方法解决了系统版本问题,解决了左滑菜单收起来的时候,背景图片会闪的bug,但是还是有个bug,就是iOS 11以上版本,在一个cell左滑菜单没有收起来时,新左滑的cell没有了想要效果。这是因为iOS11的左滑选项的视图层级有了较大改变。最显著的改变是左滑删除是UITableViewCell的子视图变成了UITableView的子视图,所以会出现这个问题。

最终解决

获取当前左滑cell的index
左滑代理
自定义按钮

这里设置图片,但是依然给出标题“删除”是因为在iOS11以下版本,title给空的话左滑删除按钮会很窄,subView.subviews[0] 获取按钮时可以拿UIButton接收,但是设置button图片时,iOS11又有bug,所以我选择拿UIView接收,然后添加图片或者自定义的界面。

 

人已赞赏
iOS文章

iOS 手机 邮箱 正则表达式

2019-12-9 11:20:22

iOS文章

iOS-生成简单的渐变图片

2019-12-10 12:43:20

个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
有新消息 消息中心
搜索