IOS UITableViewCell隐藏删除按钮和设置删除按钮的标题

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

首先设置好导航栏中的self.editButtonItem,可以自定义其标题:

    self.navigationItem.rightBarButtonItem = self.editButtonItem;
[self.editButtonItem setTitle:@"显示按钮"];

 

并开启可编辑功能:

- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
return YES;
}

 

隐藏删除按钮

可以使用UITableViewDelegate协议中的方法来实现在Cell中显示删除按钮或插入按钮:

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath;

使用:

- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath {
//    return UITableViewCellEditingStyleNone;
//    return UITableViewCellEditingStyleInsert;
return UITableViewCellEditingStyleDelete;
}

在SDK中UITableViewCellEditingStyle定义如下:

typedef NS_ENUM(NSInteger, UITableViewCellEditingStyle) {
UITableViewCellEditingStyleNone,
UITableViewCellEditingStyleDelete,
UITableViewCellEditingStyleInsert
};

分别对应没有按钮、删除按钮和插入按钮。

在点击右上角的按钮后,每个Cell中显示的按钮如下:

(1)Delete

 

(2)Insert

 

(3)None

 

 

设置删除按钮的标题

使用UITableViewDelegate协议中的另一个方法可以自定义删除按钮的标题:

- (NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath NS_AVAILABLE_IOS(3_0);

使用:

- (NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath {
return @"警告:删除";
}

运行结果:

 

如果要开启在Cell中向左划时显示删除按钮,必须实现以下方法:

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
if (editingStyle == UITableViewCellEditingStyleDelete) {
}
else if (editingStyle == UITableViewCellEditingStyleInsert) {
}
}

Demo下载地址:UITableView:隐藏删除按钮和设置删除按钮的标题

 

人已赞赏
iOS文章

iOS 小心删除Documents中的文件

2020-5-9 23:48:10

iOS文章

iOS UIRefreshControl点击按钮实现下拉刷新

2020-5-10 1:03:10

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