IOS开发之——私人通讯录删除联系人(59)

本文详细介绍了在iOS应用中管理联系人,包括左滑删除联系人,实现界面全局和局部刷新,以及编辑联系人的操作。通过实现UITableView的commitEditingStyle方法来触发删除,并使用deleteRowsAtIndexPaths更新局部界面。同时,展示了如何在编辑联系人后进行界面刷新和数据归档。此外,还讲解了如何设置中文删除文字,确保在系统语言为中文时显示正确。
摘要由CSDN通过智能技术生成

一 概述

本文介绍私人通讯录相关的联系人删除相关的操作,涉及以下知识点:

  • 左滑删除联系人,界面全局和局部刷新
  • 编辑联系人,界面全局和局部刷新
  • 左滑删除的文字如何显示中文删除

二 效果图

三 左滑删除联系人,界面全局和局部刷新

3.1 说明

  • 联系人ConTroller只要实现commitEditingStyle方法,列表项向左滑动会出现删除按钮
  • commitEditingStyle方法中自己实现删除数据并刷新界面

3.2 代码

1
2
3
4
5
6
7
8
9
10
- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath{
    if (editingStyle==UITableViewCellEditingStyleDelete) {
        //删除数据
        [self.contacts removeObjectAtIndex:indexPath.row];
        //刷新界面
        //[self.tableView reloadData];//全局刷新
        [self.tableView deleteRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationLeft];//删除局部
    }
    NSLog(@"%ld",indexPath.row);
}

四 编辑联系人,界面全局和局部刷新

4.1 功能说明

  • 联系人ConTroller的didUpdateContact方法是更新联系人要实现的方法
  • 在此方法中处理全局和局部刷新逻辑

4.2 代码

1
2
3
4
5
6
7
8
9
-(void)editViewController:(EditViewController *)edit didUpdateContact:(Contact *)contact
{
    //刷新表格
    //[self.tableView reloadData];//全部刷新
    NSIndexPath *selectIndex=[self.tableView indexPathForSelectedRow];
    [self.tableView reloadRowsAtIndexPaths:@[selectIndex] withRowAnimation:UITableViewRowAnimationLeft];
    //归档
    [NSKeyedArchiver archiveRootObject:self.contacts toFile:FilePath];
}

五 左滑删除的文字如何显示中文删除

5.1 前提

  • 系统语言是中文
  • 添加中文本地化

5.2 添加本地化操作

  • 依次选择:项目——>Locallization——>+,在弹出的语言列表中选择中文简体

     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值