1、tableView的编辑的步骤:
1.让tableView处于编辑状态,(默认所有的cell都处于编辑状态,默认下的编辑样式是删除)
2.设置哪些cell可以编辑
3.设置编辑的样式(删除,插入)
————————————————————————————————
AppDelegate.m
RootViewController.m
#import "RootViewController.h"
#import "DetailViewController.h"
@interface RootViewController ()<</span>UITableViewDataSource,UITableViewDelegate>
@property(nonatomic,retain)NSMutableDictionary *dict;
@property(nonatomic,retain)NSMutableArray *orderKeys;
@end
@implementation RootViewController
-(void)dealloc{
self.dict = nil;
self.orderKeys = nil;
[ super dealloc];
#import "DetailViewController.h"
@interface RootViewController ()<</span>UITableViewDataSource,UITableViewDelegate>
@property(nonatomic,retain)NSMutableDictionary *dict;
@property(nonatomic,retain)NSMutableArray *orderKeys;
@end
@implementation RootViewController
-(void)dealloc{
}
重写loadView方法,将UITableView指定为视图控制器的对象
- (void)loadView{
UITableView *tableView = [[UITableView alloc]initWithFrame:[UIScreen mainScreen].bounds style:(UITableViewStylePlain)];
//设置数据源代理
tableView. dataSource = self;
//设置业务代理
tableView. delegate = self;
//将tableView 指定为rootViewController 根视图
self.view = tableView;
[tableView release];
}
}
- (void)viewDidLoad {
[ super viewDidLoad];
}
从plist文件读取数据
- (void)readDataFromPlist{
//
}
- (void)configureNavigationConte
}
//重写点击Edit按钮方法
- (void)setEditing:(BOOL)editing animated:(BOOL)animated{
//
//
}
——————————————————————————————————
#pragma mark 必须实现的数据源代理方法
//2.配置哪些cell可以编辑
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath{
// if (indexPath.section < 3) {
// return YES;
// }
// return NO;
return indexPath.section <</span> 3 ? YES : NO;
}
//设置deligt为删除
- (NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:( NSIndexPath *)indexPath{
return @"删除";
}
//4.提交编辑操作
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle )editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{
//先修改数据源再更新UI(界面)
//1.根据分区索引获取key值,确定要删除的cell在哪个分区(eg:B分区 D分区)
NSString *key = self.orderKeys[indexPath.section];
//2.根据key值拿到字典中对应的分组
NSMutableArray *group = self.dict[key];
//删除
if (editingStyle == UITableViewCellEditingStyleDelete ) {
——————————————————————————————————
#pragma mark 必须实现的数据源代理方法
//2.配置哪些cell可以编辑
- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath{
//
//
//
//
}
//设置deligt为删除
- (NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmati
}
//4.提交编辑操作
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingSt
}
- (
}
//返回row个数
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
}
//返回区头标题
- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{
}
//返回右侧索引栏
- (NSArray *)sectionIndexTitlesForTab
}
- (
//
}
————————————————————————————————
#pragma mark
//设置哪些行可以移动
- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath{
}
//提交移动后的操作
- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)sourceIndexPath toIndexPath:(NSIndexPath *)destinationIndexPath{
//
//
//
}
- (NSIndexPath *)tableView:(UITableView *)tableView targetIndexPathForMoveFr
//
}
——————————————————————-——————————
//3.设置tableView的编辑样式
- (UITableViewCellEditingSt
//
//
//
//
//
}
//设置行高
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
}
=======================================================
DetailViewController.h
@property(nonatomic,retain)NSDictionary *dic;
DetailViewController.m
- (void)dealloc{
self.dic = nil;
[ super dealloc];
}
- (void)viewDidLoad {
[ super viewDidLoad];
self.view.backgroundColor = [UIColor whiteColor];
[( DetailView *)self.view assignAllController:self.dic];
}
- (void)loadView{
DetailView *detaileView = [[DetailView alloc]initWithFrame:[UIScreen mainScreen].bounds];
self.view = detaileView;
[detaileView release];
}
- (void)viewDidLoad {
}
- (void)loadView{
}
最终效果:
===================================================
传值不做介绍,仅供参考!
欢迎学习本文,未经许可,禁止转载!