自定义 UITableViewRowAction
2016-05-03 15:40
435 查看
先上图
![](https://img-blog.csdn.net/20160503153410630)
这个就是要完成的结果
自定义UITableViewCell,相信MVC模式下的你,肯定自定义了,
然后重写一个方法
然后看结果,上图,
![](https://img-blog.csdn.net/20160503153727782)
你肯能会出现这个情况,这个是因为”UITableViewCellDeleteConfirmationView”没有那么宽,放不下两个按钮,怎么办
执行这个方法
这个方法可以定义”UITableViewCellDeleteConfirmationView”的宽度,大功告成!!
这个就是要完成的结果
自定义UITableViewCell,相信MVC模式下的你,肯定自定义了,
然后重写一个方法
- (void)didTransitionToState:(UITableViewCellStateMask)state{ [super didTransitionToState:state]; if ((state & UITableViewCellStateShowingDeleteConfirmationMask) == UITableViewCellStateShowingDeleteConfirmationMask) { dispatch_async(dispatch_get_main_queue(), ^{ //必须在主线程 for (UIView* subview in self.subviews) { if ([NSStringFromClass([subview class]) isEqualToString:@"UITableViewCellDeleteConfirmationView"]) { //删除系统的那个删除按钮 [subview.subviews makeObjectsPerformSelector:@selector(removeFromSuperview)]; subview.backgroundColor = [UIColor clearColor]; //添加按钮 UIButton* editBtn = [UIButton buttonWithType:UIButtonTypeCustom]; editBtn.frame = CGRectMake(10, 4, 50, 65); [editBtn setBackgroundImage:[UIImage imageNamed:@"taskEditAction"] forState:UIControlStateNormal]; editBtn.adjustsImageWhenHighlighted = NO; [editBtn addTarget:self action:@selector(actionHandel) forControlEvents:UIControlEventTouchUpInside]; [subview addSubview:editBtn]; UIButton* deleteBtn = [UIButton buttonWithType:UIButtonTypeCustom]; deleteBtn.frame = CGRectMake(60, 4, 50, 65); [deleteBtn setBackgroundImage:[UIImage imageNamed:@"taskDeleteAction"] forState:UIControlStateNormal]; deleteBtn.adjustsImageWhenHighlighted = NO; [deleteBtn addTarget:self action:@selector(actionHandel) forControlEvents:UIControlEventTouchUpInside]; [subview addSubview:deleteBtn]; } } }); } }
然后看结果,上图,
你肯能会出现这个情况,这个是因为”UITableViewCellDeleteConfirmationView”没有那么宽,放不下两个按钮,怎么办
执行这个方法
- (NSString*)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath{ return @"AAAAAAA"; }
这个方法可以定义”UITableViewCellDeleteConfirmationView”的宽度,大功告成!!
相关文章推荐
- 分享微信开发Html5轻游戏中的几个坑
- C# MVC模式下商品抽奖功能实现
- Zend的MVC机制使用分析(二)
- ASP.NET MVC 4 捆绑和缩小实例介绍
- ASP.NET Mvc开发之查询数据
- ASP.NET MVC中将控制器分离到类库的实现
- asp.net实现在非MVC中使用Razor模板引擎的方法
- ASP.NET MVC中的AJAX应用
- 为ASP.NET MVC及WebApi添加路由优先级
- ASP.NET MVC中图表控件的使用方法
- 剖析ASP.NET MVC的DependencyResolver组件
- ASP.NET MVC的四种验证编程方式
- ASP.NET MVC @Helper辅助方法和@functons自定义函数的使用方法
- 仅30行代码实现Javascript中的MVC
- asp.net MVC利用ActionFilterAttribute过滤关键字的方法
- ASP.NET MVC使用ActionFilterAttribute实现权限限制的方法(附demo源码下载)
- ASP.NET MVC 3仿Server.Transfer效果的实现方法
- 如何在MVC应用程序中使用Jquery
- 利用ASP.NET MVC+EasyUI+SqlServer搭建企业开发框架
- ASP.NET MVC小结之基础篇(二)