博客> 分享tableView一个好用的代理方法
分享tableView一个好用的代理方法
2017-07-21 12:29 评论:0 阅读:206 蓝波大人
ios tableview

最近项目需要做一个类型qq删除消息记录的功能,qq包含删除,置顶等.以前自己做的比较多的就只有删除cell这个功能了,但是现在需要多添加一个编辑按钮.开始自己想自定义的.查了一下tableView的代理方法,发现在ios8之后早就推出了一个专门的代理来实现.自己顿时觉得捡到宝一样.本人本来就是一个能有系统自带的且效果不错的控件或者功能就会尽力使用.下面简单介绍一下吧! 其实它也是属于tableView代理里面的Editing方法,所以必须先要实现

  • (BOOL)tableView:(UITableView )tableView canEditRowAtIndexPath:(NSIndexPath )indexPath { return YES; }
  • (void)tableView:(UITableView )tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath )indexPath { editingStyle = UITableViewCellEditingStyleDelete;

}

主要的方法就是: -(NSArray )tableView:(UITableView )tableView editActionsForRowAtIndexPath:(NSIndexPath )indexPath { //删除按钮 UITableViewRowAction deleteRoWAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleDestructive title:@"删除" handler:^(UITableViewRowAction action, NSIndexPath indexPath) { //在这里实现点击删除按钮的结果

}];

//编辑按钮 UITableViewRowAction editRowAction = [UITableViewRowAction rowActionWithStyle:UITableViewRowActionStyleNormal title:@"编辑" handler:^(UITableViewRowAction action, NSIndexPath indexPath) { //在这里实现点击编辑按钮的结果 }]; editRowAction.backgroundColor = [UIColor grayColor]; //设置按钮的背景颜色 NSArray arr = @[deleteRoWAction, editRowAction]; //可添加多个按钮 return arr; }

收藏
0
sina weixin mail 回到顶部