01系统通讯录_分组_UIFramework_SearchBar

一、系统通讯录
项目:SystemContact0426
(一)准备工作
导入系统通讯录

#import <Contacts/Contacts.h>

(二)步骤
1.创建CNContactStore
2.访问通讯录
2.1 获取并判断授权状态(第一次为用户未决定状态,请求用户授权)
2.2 获取用户授权
2.3 获取通讯录数据(创建请求CNContactFetchRequest,遍历contacts,存入数组)
3.在主线程刷新表

二、分组
项目:SystemContact_Group0426
(一)准备数据
1.汉语转拼音
(1)转成拼音
(2)去掉音符
2.取出首字母(转换成大写)
3.判断首字母在字典的key中是否存在
(1)若有,直接将obj存到key对应的value数组中
(2)若无,添加到字典
(二)表的协议方法
1.设置区数
2.设置区头
3.设置区头索引

三、UIFramework
项目:SystemContact_UIFramework0426
(一)准备工作
1.导入两个框架

2.导入头文件

#import <Contacts/Contacts.h>
#import <ContactsUI/ContactsUI.h>

3.协议

<CNContactPickerDelegate>

(二)步骤
1.创建CNContactPickerViewController
2.设置代理
3.实现协议方法
4.模态弹出

四、SearchBar
项目:SearchBar0426
步骤:
1.创建resultViewController
2.创建UISearchController
3.设置代理searchResultsUpdater
4.设置属性(①将自带的searchBar作为表头视图②调整上下文③灰色透明背景)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 概述在iOS开发中UITableView可以说是使用最广泛的控件,我们平时使用的软件中到处都可以看到它的影子,类似...
    liudhkk阅读 9,093评论 3 38
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,259评论 4 61
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,010评论 19 139
  • 夕阳挥别了月光 悄悄离去 月光告别了黎明 黯然离去 黎明候着阳光升起 无奈离去 我也踏着青石 在喧哗中默默离去 三...
    谢小四阅读 157评论 4 1
  • 2017年3月17日 星期五 晴 最近楼下天天施工,你说你白天施工就算了,这没什么,晚上过了8点还在施工,吵死了...
    sunny珊珊林夕梦阅读 209评论 0 0