IOS基础知识记录九(调用AddressBook地址博信息)
来源:互联网 发布:mac打开文件夹很慢 编辑:程序博客网 时间:2024/04/30 16:54
手机访问地址薄
1.首先加入包AddressBookUI、AddressBook并引入类。其次加入地址薄调用遵循的协议
2.实现协议的部分方法,用来处理选择地址薄信息或者关闭地址操作等
3.解析选择的地址薄信息
1.首先加入包AddressBookUI、AddressBook并引入类。其次加入地址薄调用遵循的协议
#import <AddressBookUI/AddressBookUI.h>#import <AddressBook/AddressBook.h>//协议ABPeoplePickerNavigationControllerDelegate
2.实现协议的部分方法,用来处理选择地址薄信息或者关闭地址操作等
//当地址关闭时处理部分信息: 如果关闭模态等,在第七记录中已经写过-(void)peoplePickerNavigationControllerDidCancel:(ABPeoplePickerNavigationController *)peoplePicker//处理选择地址薄后怎么解析person信息-(BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person
3.解析选择的地址薄信息
-(BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person { NSString *firstName, *lastName; //对于地址薄中的firstName, lastName都是唯一的不会重复,故直接转化字符串 firstName = (__bridge NSString *)ABRecordCopyValue(person, kABPersonFirstNameProperty); lastName = (__bridge NSString *)ABRecordCopyValue(person, kABPersonLastNameProperty); //电话是多个, 要用数组来处理 ABMultiValueRef telRef; telRef = ABRecordCopyValue(person, kABPersonPhoneProperty); if (ABMultiValueGetCount(telRef) > 0) { NSString * tel = (__bridge NSString *)ABMultiValueCopyValueAtIndex(telRef, 1); } //Email 和电话类似 ABMultiValueRef emailRef; emailRef = ABRecordCopyValue(person, kABPersonEmailProperty); if (ABMultiValueGetCount(emailRef) > 0) { email.text = (__bridge NSString *)ABMultiValueCopyValueAtIndex(emailRef, 0); } //而相对于地址来说比较复杂。 地址信息包含信息量比较大 ABMultiValueRef addressRef; NSDictionary *addressDic; NSString *zipCode; addressRef = ABRecordCopyValue(person, kABPersonAddressProperty); if (ABMultiValueGetCount(addressRef) > 0) { addressDic = (__bridge NSDictionary *)ABMultiValueCopyValueAtIndex(addressRef, 0); zipCode = [addressDic objectForKey: @"ZIP"]; } //关闭模态 [self dismissViewControllerAnimated: YES completion: nil]; return NO;}
0 0
- IOS基础知识记录九(调用AddressBook地址博信息)
- IOS基础知识记录九(Page Scroll)
- iOS AddressBook
- ios addressbook
- IOS基础知识记录十(调用Google Map)
- AddressBook 地址簿 (电话簿) 访问与修改-IOS开发
- AddressBook 地址簿 (电话簿) 访问与修改-IOS开发
- AddressBook 地址簿 (电话簿) 访问与修改-IOS开发
- AddressBook 地址簿 (电话簿) 访问与修改-IOS开发
- AddressBook 地址簿 (电话簿) 访问与修改-IOS开发
- 如何使用iOS AddressBook
- IOS addressbook框架
- 如何使用iOS AddressBook
- 如何使用iOS AddressBook
- 如何使用iOS AddressBook
- 如何使用iOS AddressBook
- 如何使用iOS AddressBook
- ios-AddressBook框架
- 欢迎使用CSDN-markdown编辑器
- n皇后问题
- 11.11快到了幽默一下
- IOS基础知识记录八(手机相机或者图片库)
- Extjs处理客户复制三位一撇到numberfield里面
- IOS基础知识记录九(调用AddressBook地址博信息)
- TensorFlow Train篇
- VMware tools安装时 客户机操作系统已将 CD-ROM 门锁定,并且可能正在使用CD-ROM
- Android Studio 高级配置
- 【UVALive 7364】Robots(逆向思维+搜索)
- 免积分下载与PDF转换
- Linux VMware Centos 找不到 网卡 vmnet1 和 vmnet8
- mooc_C++_起航_10.10
- LeetCode OJ-39-Combination Sum