美文网首页
10.12 UITableView2 (cell) 动画效

10.12 UITableView2 (cell) 动画效

作者: jayck | 来源:发表于2016-10-23 20:59 被阅读75次

    UITableView2(cell)

    添加一行cell,删除一行cell

    #import "ViewController.h"
    
    @interface ViewController ()<UITableViewDelegate,UITableViewDataSource>
    {
        UITableView *_tableView;
        NSMutableArray *_datas;
    }
    @end
    
    @implementation ViewController
    
    - (void)viewDidLoad {
        [super viewDidLoad];
        
        _tableView = [[UITableView alloc]initWithFrame:self.view.bounds style:UITableViewStylePlain];
        _tableView.delegate = self;
        _tableView.dataSource = self;
        [self.view addSubview:_tableView];
        [_tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:@"cell"];
    
        _datas = [NSMutableArray array];
        for (NSInteger i = 0; i<100; i++) {
            
            [_datas addObject:[NSString stringWithFormat:@"%ld",i]];
        }
        
    }
    
    //
    - (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
    
        return _datas.count;
    }
    
    - (UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
    
        UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"cell"];
    //    cell.textLabel.text = [NSString stringWithFormat:@"%ld",indexPath.row];
        cell.textLabel.text = _datas[indexPath.row];
        return cell;
    }
    
    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
    
    //    tableView.editing = YES;
        //点击的哪行就往下面多加一行,然后把*的数据传进去
        [_datas insertObject:@"*" atIndex:indexPath.row+1];
        
        NSIndexPath *customIndexPath = [NSIndexPath indexPathForRow:indexPath.row+1 inSection:0];
        //在点击那行下面新添加一行
        [tableView insertRowsAtIndexPaths:@[customIndexPath] withRowAnimation:UITableViewRowAnimationTop];
        [tableView deselectRowAtIndexPath:indexPath animated:YES];
    }
    
    //向左滑动的出现可以编辑按钮的API
    - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{
    
        [_datas removeObjectAtIndex:indexPath.row];
    //    [tableView reloadData];
        //删除点击的那一行
        [_tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationBottom];
        NSLog(@"->%ld",indexPath.row);
        
    }
    
    @end
    
    

    向左滑动出现Delete删除键

    Paste_Image.png

    在点击的行后新添加一行

    Paste_Image.png

    相关文章

      网友评论

          本文标题:10.12 UITableView2 (cell) 动画效

          本文链接:https://www.haomeiwen.com/subject/hrpkuttx.html