• 编辑UITableviewCell--Editing


        self.navigationItem.rightBarButtonItem = self.editButtonItem;
    - (void)setEditing:(BOOL)editing animated:(BOOL)animated
    {
        [super setEditing:editing animated:animated];
        [self.countriesTableView setEditing:editing animated:animated];
    }
    - (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
    {
        if (editingStyle == UITableViewCellEditingStyleDelete) {
            Country * delegateCountry = self.countries[indexPath.row];
            [self.countries removeObject:delegateCountry];
            
            [self.countriesTableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
        }
    }

    insert(默认编辑样式都是UITableviewCellEditingStyleDelete),所以添加insert样式。

    - (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
    {
        if ((indexPath.row%2) == 0) {
            return UITableViewCellEditingStyleInsert;
        }
        return UITableViewCellEditingStyleDelete;
    }
    }else if (editingStyle == UITableViewCellEditingStyleInsert){
            Country * copiedCountry = self.countries[indexPath.row];
            Country * newCountry = [[Country alloc] init];
            newCountry.name = copiedCountry.name;
            newCountry.flag = copiedCountry.flag;
            newCountry.capital = copiedCountry.capital;
            newCountry.motto = copiedCountry.motto;
            [self.countries insertObject:newCountry atIndex:indexPath.row+1];
            [self.countriesTableView insertRowsAtIndexPaths:[NSArray arrayWithObject:[NSIndexPath indexPathForRow:indexPath.row + 1 inSection:indexPath.section]] withRowAnimation:UITableViewRowAnimationRight];
        }

    重新排序

    - (BOOL)tableView:(UITableView *)tableView canMoveRowAtIndexPath:(NSIndexPath *)indexPath
    {
        return YES;
    }
    - (void)tableView:(UITableView *)tableView moveRowAtIndexPath:(NSIndexPath *)sourceIndexPath toIndexPath:(NSIndexPath *)destinationIndexPath
    {
        [self.countries exchangeObjectAtIndex:sourceIndexPath.row withObjectAtIndex:destinationIndexPath.row];
        [self.countriesTableView reloadData];
    }
  • 相关阅读:
    Java实现蓝桥杯 算法提高 线段和点
    Java实现蓝桥杯 算法提高 线段和点
    Java实现蓝桥杯 算法提高 线段和点
    Java实现第八届蓝桥杯国赛 数字划分
    Java实现第八届蓝桥杯国赛 数字划分
    Java实现第八届蓝桥杯国赛 数字划分
    Java实现第八届蓝桥杯国赛 数字划分
    Java实现第八届蓝桥杯国赛 数字划分
    Java实现蓝桥杯-算法提高 P1003
    必须得是一万小时的 刻意训练(deliberate practice)
  • 原文地址:https://www.cnblogs.com/fengmin/p/5482690.html
Copyright © 2020-2023  润新知