IOS开发之——私人通讯录删除联系人
一 概述
本文介绍私人通讯录相关的联系人删除相关的操作,涉及以下知识点:
- 左滑删除联系人,界面全局和局部刷新
- 编辑联系人,界面全局和局部刷新
- 左滑删除的文字如何显示中文删除
作为一个开发者,有一个学习的氛围跟一个交流圈子特别重要,这是一个我的iOS交流群:812157648,不管你是小白还是大牛欢迎入驻 ,分享BAT,阿里面试题、面试经验,讨论技术, 大家一起交流学习成长!
二 效果图
三 左滑删除联系人,界面全局和局部刷新
3.1 说明
- 联系人ConTroller只要实现
commitEditingStyle
方法,列表项向左滑动会出现删除按钮 - 在
commitEditingStyle
方法中自己实现删除数据并刷新界面
3.2 代码
- (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 代码
-(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——>+,在弹出的语言列表中选择中文简体
原文作者:PGzxc
原文地址:https://blog.csdn.net/Calvin_zhou/article/details/109089890