iOS Table View Cell 自定义左滑按钮及事件(系统自带方法)

iOS Table View Cell 自定义左滑按钮及事件(系统自带方法),第1张

在项目需求中,经常会有对 TableView Cell 左滑事件按钮的自定义设置需求

在iOS 11.0之前,我们可以看到 Cell 的左滑界面 UITableViewCellDeleteConfirmationView 布局是在于 Cell 之中的,并且只有左滑事件之后才会添加到 Cell 中,在左滑界面中存在一个 UIButton 的子视图,这便是我们需要自定义的视图

在 tableView 的 delegate 方法中自带有 - (NSArray *)tableView:(UITableView*)tableView editActionsForRowAtIndexPath:(NSIndexPath*)indexPath 可自定义事件

至此iOS 11.0之前的版本的左滑自定义便已经可以了(当然,也可以自定义左滑时多个事件,原理也是一样的)

在iOS 11.0之后的版本,左滑布局发生了改变

iOS 11.0之后的当然能用之前的方法了,而苹果在11.0之后其实也新增了另外一个新的方法 - (UISwipeActionsConfiguration *)tableView:(UITableView *)tableView trailingSwipeActionsConfigurationForRowAtIndexPath:(NSIndexPath *)indexPath ,只在iOS 11.0之后的系统才有效,其实目前区别上也仅仅是action多了一个image属性,然而此image属性也不能显示原图,而是会被自动渲染。

GItHubDemo

很简单啊。。在点击+或者-按钮的时候设置tableview的editing为yes啊,记住点击的按钮是那个啊,可以设个bool或者其他的来记住都行,然后重写

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath根据你记住的按钮返回相应的类型啊。UITableViewCellEditingStyleDelete或者UITableViewCellEditingStyleInsert。


欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/bake/11511258.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-16
下一篇 2023-05-16

发表评论

登录后才能评论

评论列表(0条)

保存