#import "DengViewController.h" #import <CoreGraphics/CoreGraphics.h> @interface DengViewController () @end @implementation DengViewController @synthesize arrayStrig=_arrayStrig; //@synthesize number=_number; //@synthesize data=_data; //@synthesize tableview=_tableview; - (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil{ self=[super initWithNibName:nibNameOrNil bundle:nibBundleOrNil]; if (self) { _data=[[NSMutableArray alloc] initWithCapacity:0]; } return self; } - (void)viewDidLoad { [super viewDidLoad]; /* UITableView *tableview = [[UITableView alloc] initWithFrame:self.view.bounds style:UITableViewStyleGrouped]; tableview.delegate=self; tableview.dataSource=self; [tableview setEditing:YES]; [self.view addSubview:tableview]; NSArray *array1=[[NSArray alloc] initWithObjects:@"one",@"three",@"five",@"seven",@"nine", nil]; NSArray *array2=[[NSArray alloc] initWithObjects:@"two",@"four",@"six",@"eight",@"ten" ,nil]; self.arrayStrig=[[NSArray alloc] initWithObjects:array1,array2, nil]; */ UIView *v =[[UIView alloc] initWithFrame:CGRectMake(0, 0, 320, 40)]; v.backgroundColor=[UIColor grayColor]; [self.view addSubview:v]; UIButton *but = [UIButton buttonWithType:UIButtonTypeRoundedRect]; but.frame=CGRectMake(20, 5, 40, 30); [but setTitle:@"添加" forState:UIControlStateNormal]; [but addTarget:self action:@selector(add:) forControlEvents:UIControlEventTouchUpInside]; but.alpha=0.8; [v addSubview:but]; but = [UIButton buttonWithType:UIButtonTypeRoundedRect]; but.frame=CGRectMake(260, 5, 40, 30); [but setTitle:@"编辑" forState:UIControlStateNormal]; [but addTarget:self action:@selector(edit:) forControlEvents:UIControlEventTouchUpInside]; but.alpha=0.8; [v addSubview:but]; CGRect frame= CGRectMake(0, 40, self.view.bounds.size.width, self.view.bounds.size.height-40); _tableview=[[UITableView alloc] initWithFrame:frame]; _tableview.autoresizingMask=UIViewAutoresizingFlexibleWidth|UIViewAutoresizingFlexibleTopMargin; _tableview.delegate=self; _tableview.dataSource=self; [self.view addSubview:_tableview]; // _data=[[NSMutableArray alloc] initWithObjects:@"one",@"three",@"five",@"seven",@"nine", nil]; // Do any additional setup after loading the view, typically from a nib. } #pragma mark-(处理tableview) - (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{ //return [self.arrayStrig count]; return 1; } - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{ #if 0 if (0==section) { return 5; }else return 5; #endif // return [[self.arrayStrig objectAtIndex:section] count]; return _data.count; } - (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ NSInteger row=indexPath.row; NSInteger section=indexPath.section; NSString *data = [[self.arrayStrig objectAtIndex:section] objectAtIndex:row]; #pragma mark可重用cell机制 static NSString * identifier=@"Cell"; UITableViewCell *cell=[tableView dequeueReusableCellWithIdentifier:identifier]; if (cell==nil) { cell=[[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identifier]; } cell.accessoryType=UITableViewCellAccessoryDisclosureIndicator; cell.textLabel.text=data; return cell; } #if 0 - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{ if (section==1) { return @"偶数"; }else return @"奇数"; } #endif #pragma mark-自定义页眉 /* - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{ return 50; } - (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{ UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 320, 50)]; label.backgroundColor=[UIColor grayColor]; label.textAlignment=NSTextAlignmentLeft; label.font=[UIFont fontWithName:nil size:18]; label.textColor=[UIColor redColor]; //label.font=[UIFont systemFontOfSize:18]; if (section==1) { label.text=@"偶数"; }else label.text=@"奇数"; return label; } */ #pragma mark-自定义页脚 - (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section{ return 30; } - (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section{ UILabel *label = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, 320, 60)]; label.backgroundColor=[UIColor orangeColor]; label.textAlignment=NSTextAlignmentCenter; label.text=@"尾页"; label.font=[UIFont fontWithName:nil size:15]; return label; } #pragma mark-选择section - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ NSInteger row=indexPath.row; NSInteger section=indexPath.section; #pragma mark自定义警告视图的messag NSString *msg = [NSString stringWithFormat:@"section:%d,row:%d",section,row]; UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"提示" message:msg delegate:nil cancelButtonTitle:@"Ok" otherButtonTitles: nil]; [alert show]; } #pragma mark-索引 /* - (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section{ return [NSString stringWithFormat:@"%c",'A'+section]; } - (NSArray *)sectionIndexTitlesForTableView:(UITableView *)tableView{ return [[UILocalizedIndexedCollation currentCollation] sectionIndexTitles]; } - (NSInteger)tableView:(UITableView *)tableView sectionForSectionIndexTitle:(NSString *)title atIndex:(NSInteger)index{ return index; } */ #pragma mark-可编辑 - (void)add:(UIButton *)but{ NSString *string = [NSString stringWithFormat:@"%d",_number++]; [_data addObject:string]; [_tableview reloadData]; } - (void)edit:(UIButton *)but{ if ([_tableview isEditing]) { [but setTitle:@"编辑" forState:UIControlStateNormal]; [_tableview setEditing:NO animated:YES]; }else{ [but setTitle:@"完成" forState:UIControlStateNormal]; [_tableview setEditing:YES animated:YES]; } } #pragma mark选择编辑的风格 - (UITableViewCellEditingStyle )tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath{ if (indexPath.row%2) { return UITableViewCellEditingStyleDelete; }else return UITableViewCellEditingStyleInsert; } - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{ if (editingStyle==UITableViewCellEditingStyleDelete) { [_data removeObjectAtIndex:indexPath.row]; [_tableview deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationFade]; } else if (editingStyle==UITableViewCellEditingStyleInsert){ [_data insertObject:[NSString stringWithFormat:@"%d",_number++] atIndex:indexPath.row]; [_tableview insertRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationRight]; } } - (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated. } @end