UITableView的编辑

来源:互联网 发布:国密算法是否可解密 编辑:程序博客网 时间:2024/05/17 04:37

UITableView的编辑

拉ib并关联

//注册    [self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:CellIdentifier];    //系统自带//    self.navigationItem.rightBarButtonItem = self.editButtonItem;    //自定义    self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc]initWithTitle:@"编辑" style:UIBarButtonItemStylePlain target:self action:@selector(editAction:)];//编辑的点击-(void)editAction:(UIBarButtonItem *)sender{    self.editing = !self.editing;}//是否可编辑- (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath {    // Return NO if you do not want the specified item to be editable.    return YES;}//编辑的样式-(UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath{    if (indexPath.row==0) {        //添加样式        return UITableViewCellEditingStyleInsert;    }else        //删除样式        return UITableViewCellEditingStyleDelete;}//添加和删除所执行的方法- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {    if (editingStyle == UITableViewCellEditingStyleDelete) {        //删除数据源        [dataSource removeObjectAtIndex:indexPath.row];        //删除cell        [tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];    } else if (editingStyle == UITableViewCellEditingStyleInsert) {        //添加数据源        [dataSource insertObject:@"增加" atIndex:indexPath.row];        //添加cell        [tableView insertRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationLeft];    }}//改变删除字体-(NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath{    return @"删除";}//cell是否可移动- (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath {    return YES;}//移动执行的方法- (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)fromIndexPath toIndexPath:(NSIndexPath *)toIndexPath {    //数据库的交换    [dataSource exchangeObjectAtIndex:fromIndexPath.row withObjectAtIndex:toIndexPath.row];    //cell的交换    [tableView moveRowAtIndexPath:fromIndexPath toIndexPath:toIndexPath];

}

0 0
原创粉丝点击