添加底部工具栏和UITableViewCell的滑动删除
一.添加底部工具栏
在工具栏上设置图标时可以使用系统自带图标也可以使用自定义图标,下面分别介绍这两种方法:
1.使用系统自带图标(编辑图标)
UIBarButtonItem *editItem = [[UIBarButtonItemalloc] initWithBarButtonSystemItem:UIBarButtonSystemItemComposetarget:selfaction:@selector(editEventClick)];
2.使用自定义图标(删除图标)
UIBarButtonItem *deleteItem = [[UIBarButtonItemalloc] initWithImage:[UIImagep_w_picpathNamed:@"ic_delete.png"] style:UIBarButtonItemStylePlaintarget:selfaction:@selector(deleteEventClick)];
工具栏提示:
1.固定空间可以拥有宽度-----在所有UIBarButtonItem’中,只有UIBarButtonSystemItemFixedSpace条目可以被分配一个宽度,因此,创建空间条目,设置其宽度,然后在将其添加到条目列中。
UIBarButtonItem *fixItem1 = [[UIBarButtonItemalloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpacetarget:nilaction:nil];
fixItem1.width = 125;
NSArray *arrayItem = [NSArrayarrayWithObjects:fixItem1, editItem,fixItem2,deleteItem,nil];
[selfsetToolbarItems:arrayItem];
此处编辑图标是自定义的图片,删除图标是系统自带,在截图中可以看出二者的区别
运行之后效果图如下:
2.使用一个灵活空间进行左或右对齐-----在条目列表中开始添加一个’ UIBarButtonSystemITemFlexibleSpace会使所有剩余条目右对齐。在末尾添加一个,则左对齐,使用两个UIBarButtonSystemItemFlexibleSpace,一个在开头,一个添加在末尾,会使剩余条目居中对齐。
UIBarButtonItem *fixItem1 = [[UIBarButtonItemalloc] initWithBarButtonSystemItem:UIBarButtonSystemItemFlexibleSpacetarget:nilaction:nil];
NSArray *arrayItem = [NSArrayarrayWithObjects:fixItem1,deleteItem,fixItem2,editItem,fixItem2,nil];
[selfsetToolbarItems:arrayItem];
运行之后效果图如下:
(此处编辑图标和删除图标都是系统自带)
二.滑动删除
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
returnYES;
}
//定义编辑样式
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableVieweditingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
returnUITableViewCellEditingStyleDelete;
}
//进入编辑模式
-(void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyleforRowAtIndexPath:(NSIndexPath *)indexPath {
//code
}
启用上面两个代理,并增加数据删除操作:
运行之后效果如下:
若让其左滑删除,则:(核心代码如下)
//取消TableView的右滑,保留左滑
UISwipeGestureRecognizer *swipeRight =[[UISwipeGestureRecognizer alloc]initWithTarget:self action:nil];
swipeRight.direction =UISwipeGestureRecognizerDirectionRight;
[self. tableView addGestureRecognizer:swipeRight];
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。