UITableView 实现删除移动编辑的样式
2011-06-13 13:47
841 查看
本文转自 http://wangjun.easymorse.com/?p=1312
iOS 中 UITaleView 实现删除移动样式,当手指在每一行上滑动时,会出现删除按钮,并且点击可以实现相应的逻辑。实现的效果图:
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015036/82061d1c7191329d351303a2ed19987d.png)
实现的代码:
#pragma mark – View lifecycle
- (void)viewDidLoad
{
[super viewDidLoad];
[mtableView setEditing:NO animated:YES];
}
- (void)viewDidUnload
{
[super viewDidUnload];
}
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"点击了编辑");
}
-(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
//
NSLog(@"手指撮动了");
return UITableViewCellEditingStyleDelete;
}
-(NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath
{
return @"编辑";
}
-(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
return YES;
}
- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath {
return YES;
}
- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath {
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return 2;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
/*static NSString *woIndentifier = @"woIndentifier";
WoViewCell *cell = (WoViewCell *)[tableView dequeueReusableCellWithIdentifier:woIndentifier];
if (cell == nil) {
NSArray *array = [[NSBundle mainBundle] loadNibNamed:@"WoViewCell" owner:self options:nil];
cell = [array objectAtIndex:0];
cell.editingAccessoryType=UITableViewCellEditingStyleDelete;
cell.showsReorderControl=YES;
}
return cell;
*/
UITableViewCell* cell = [tableView dequeueReusableCellWithIdentifier:@"tag"];
if (cell==nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle
reuseIdentifier:@"tag"] autorelease];
}
cell.accessoryType=UITableViewCellAccessoryDisclosureIndicator;
cell.showsReorderControl=YES;
return cell;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
return 60;
}
打印的日志:
2011-06-12 17:11:44.641 TAQDemo[24497:207] 手指撮动了
2011-06-12 17:11:44.643 TAQDemo[24497:207] 手指撮动了
2011-06-12 17:11:44.644 TAQDemo[24497:207] 手指撮动了
2011-06-12 17:17:02.941 TAQDemo[24497:207] 点击了编辑
2011-06-12 17:17:09.520 TAQDemo[24497:207] 手指撮动了
2011-06-12 17:17:09.521 TAQDemo[24497:207] 手指撮动了
2011-06-12 17:17:09.522 TAQDemo[24497:207] 手指撮动了
2011-06-12 17:17:11.462 TAQDemo[24497:207] 点击了编辑
iOS 中 UITaleView 实现删除移动样式,当手指在每一行上滑动时,会出现删除按钮,并且点击可以实现相应的逻辑。实现的效果图:
![](https://oscdn.geek-share.com/Uploads/Images/Content/2015036/82061d1c7191329d351303a2ed19987d.png)
实现的代码:
#pragma mark – View lifecycle
- (void)viewDidLoad
{
[super viewDidLoad];
[mtableView setEditing:NO animated:YES];
}
- (void)viewDidUnload
{
[super viewDidUnload];
}
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
NSLog(@"点击了编辑");
}
-(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
//
NSLog(@"手指撮动了");
return UITableViewCellEditingStyleDelete;
}
-(NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath
{
return @"编辑";
}
-(BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
{
return YES;
}
- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath {
return YES;
}
- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath {
}
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
return 2;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
/*static NSString *woIndentifier = @"woIndentifier";
WoViewCell *cell = (WoViewCell *)[tableView dequeueReusableCellWithIdentifier:woIndentifier];
if (cell == nil) {
NSArray *array = [[NSBundle mainBundle] loadNibNamed:@"WoViewCell" owner:self options:nil];
cell = [array objectAtIndex:0];
cell.editingAccessoryType=UITableViewCellEditingStyleDelete;
cell.showsReorderControl=YES;
}
return cell;
*/
UITableViewCell* cell = [tableView dequeueReusableCellWithIdentifier:@"tag"];
if (cell==nil) {
cell = [[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle
reuseIdentifier:@"tag"] autorelease];
}
cell.accessoryType=UITableViewCellAccessoryDisclosureIndicator;
cell.showsReorderControl=YES;
return cell;
}
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
return 60;
}
打印的日志:
2011-06-12 17:11:44.641 TAQDemo[24497:207] 手指撮动了
2011-06-12 17:11:44.643 TAQDemo[24497:207] 手指撮动了
2011-06-12 17:11:44.644 TAQDemo[24497:207] 手指撮动了
2011-06-12 17:17:02.941 TAQDemo[24497:207] 点击了编辑
2011-06-12 17:17:09.520 TAQDemo[24497:207] 手指撮动了
2011-06-12 17:17:09.521 TAQDemo[24497:207] 手指撮动了
2011-06-12 17:17:09.522 TAQDemo[24497:207] 手指撮动了
2011-06-12 17:17:11.462 TAQDemo[24497:207] 点击了编辑
相关文章推荐
- UITableView实现删除移动编辑的样式(转)
- UITableView实现删除移动编辑的样式
- UIday1002:UITableView 2 用UITableView实现通讯录cell简单的数据移动、删除、添加功能
- IOS UITableViewUITableView小技巧--实现cell向左滑动删除,编辑等功能
- [11]UITableView编辑 删除 添加 移动 单例 及其去掉TableView没内容的Cell
- UITableView小技巧--实现cell向左滑动删除,编辑等功能
- UIday1001:UITableView 2 编辑(添加、删除)、移动、UITableViewController
- UITableView,根据indexPath设置cell的编辑样式,删除cell ,增加cell &搜索条
- UITableView小技巧--实现cell向左滑动删除,编辑等功能
- iOS开发:UITableView编辑——cell的删除和移动
- UItableView的编辑--删除移动cell
- 编辑表格@tableView实现增加、删除、移动的操作
- UItableView中编辑,删除,移动学习笔记
- UITableView实现选择框和编辑状态时cell向右移动的自定义方法
- UITableView 编辑状态(删除、添加、移动)
- UITableView的编辑操作(移动&添加&删除-单选删除,或多选删除)
- 【精】表格(UITableView)总结(4):编辑(增加、删除、移动)
- iOS_UITableView 编辑(cell的插入, 删除, 移动)
- UITableView实现选择框和编辑状态时cell向右移动的自定义方法
- UITableView划动删除的实现