美文网首页iOSiOSiOS菜鸟食谱
7.tableview 添加左滑删除

7.tableview 添加左滑删除

作者: Jingwei | 来源:发表于2014-04-15 23:05 被阅读13304次

    原因:

    这个很常用,具体需求很多,比如你有很多的订单,可能你想取消一点订单,于是乎。。。

    解决:

    • 添加编辑模式
    - (BOOL)tableView:(UITableView *)tableView canEditRowAtIndexPath:(NSIndexPath *)indexPath
    {
        return YES;
    }
    
    • 左滑动出现的文字
    - (NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        return @"删除";
    }
    
    • 删除所做的动作
    - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
    {
        // 从数据源中删除
        [_data removeObjectAtIndex:indexPath.row];
        // 从列表中删除
           [tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];
    }
    

    要说的话:

    删除的时候别忘了,删除model中的数据

    相关文章

      网友评论

      • 十一岁的加重:简单明了不废话,好文章
      • 岳阳_: [tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationFade];
        崩溃
        quua:@岳阳_


        这样
        - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
        {
        [tableView beginUpdates];
        // 从数据源中删除
        [_data removeObjectAtIndex:indexPath.row];
        // 从列表中删除
        [tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
        [tableView endUpdates];
        }


        或者



        - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
        {
        // 从数据源中删除
        [_data removeObjectAtIndex:indexPath.row];
        // 重载数据
        [tableView reloadData];
        }

        :blush:


      本文标题:7.tableview 添加左滑删除

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