UITableview数据更新
数据更新的重点是模型的数据的更新
- (IBAction)addData {
ZJCDeal * deal = [[ZJCDeal alloc] init];
deal.title = @"大家好我是新添加的";
deal.icon = @"2c97690e72365e38e3e2a95b934b8dd2";
deal.buyCount = @"100";
deal.price = @"2222";
[self.array addObject:deal];
[self.tableview insertRowsAtIndexPaths:@[[NSIndexPath indexPathForRow:0 inSection:0]] withRowAnimation:UITableViewRowAnimationLeft];
}
- (IBAction)updateData {
ZJCDeal * deal = self.array[0];
deal.title = @"大家好我是更新的";
deal.icon = @"2c97690e72365e38e3e2a95b934b8dd2";
deal.buyCount = @"222";
deal.price = @"2222";
[self.tableview reloadData];
}
- (IBAction)deleteData {
if (self.array.count != 0) {
[self.array removeObjectAtIndex:0];
[self.tableview deleteRowsAtIndexPaths:@[[NSIndexPath indexPathForRow:0 inSection:0]] withRowAnimation:UITableViewRowAnimationRight];
}
}
删除批量数据
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[tableView deselectRowAtIndexPath:indexPath animated:YES];
ZJCDeal *deal = self.array[indexPath.row];
deal.check = !deal.isCheck;
[tableView reloadData];
}
- (IBAction)deleteData {
if (self.array.count != 0) {
NSMutableArray *checkArray = [NSMutableArray array];
for (ZJCDeal *deal in self.array) {
if (deal.isCheck) {
[checkArray addObject:deal];
}
}
[self.array removeObjectsInArray:checkArray];
[self.tableview reloadData];
}
}
@property (nonatomic, strong) NSMutableArray *deletedDeals;
- (IBAction)remove {
[self.deals removeObjectsInArray:self.deletedDeals];
[self.tableView reloadData];
[self.deletedDeals removeAllObjects];
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[tableView deselectRowAtIndexPath:indexPath animated:YES];
XMGDeal *deal = self.deals[indexPath.row];
if ([self.deletedDeals containsObject:deal]) {
[self.deletedDeals removeObject:deal];
} else {
[self.deletedDeals addObject:deal];
}
[tableView reloadData];
}
[self.tableView setEditing:!self.tableView.isEditing animated:YES];
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath
{
if (editingStyle == UITableViewCellEditingStyleDelete) {
[self.deals removeObjectAtIndex:indexPath.row];
[self.tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationLeft];
} else if (editingStyle == UITableViewCellEditingStyleInsert) {
NSLog(@"+++++ %zd", indexPath.row);
}
}
- (UITableViewCellEditingStyle)tableView:(UITableView *)tableView editingStyleForRowAtIndexPath:(NSIndexPath *)indexPath
{
return indexPath.row % 2 == 0? UITableViewCellEditingStyleInsert: UITableViewCellEditingStyleDelete;
}