ios – 当我使用CNContactPicker时,隐藏联系人详细信息中的操作按钮

前端之家收集整理的这篇文章主要介绍了ios – 当我使用CNContactPicker时,隐藏联系人详细信息中的操作按钮前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用CNContactPickerViewController,我想隐藏联系人详细信息中的操作按钮(调用,消息,面部时间).

我知道CNContactViewController中的allowActions属性,但我不知道,如果我使用CNContacPickerViewController,我怎么能访问这个属性.

使用CNContactPickerViewController时,如何隐藏联系人详细信息中的操作按钮?

解决方法

您不能将allowActions属性与CNContactPickerViewController一起使用.我使用这种方法,它没有显示任何联系人的详细信息,它只显示像这样的

enter image description here

列表

之后,您可以选择任何联系人,委托方法将为您提供该联系人的联系方式.

-(void) openDeviceContactList {
    CNContactPickerViewController *contactPicker = [CNContactPickerViewController new];
    contactPicker.delegate = self;
    [self presentViewController:contactPicker animated:YES completion:nil];
}

- (void) contactPicker:(CNContactPickerViewController *)picker didSelectContact:(CNContact *)contact {
    [self getPhoneNumberFrom:contact];
}

-(void)getPhoneNumberFrom:(CNContact *)contactObject {

    NSString * phone = @"";
    NSString * userPHONE_NO = @"";
    for(CNLabeledValue * phonelabel in contactObject.phoneNumbers) {
        CNPhoneNumber * phoneNo = phonelabel.value;
        phone = [phoneNo stringValue];
        if (phone) {
            userPHONE_NO = phone;
        }
        break;
    }
    NSLog(@"PHONE NO :: %@",userPHONE_NO);
}

调用[self openDeviceContactList];在按钮水龙头上,您要打开联系人列表.这将呈现CNContactPickerViewController.为此,您必须实现CNContactPickerDelegate,并且还必须从Build Settings添加ContactsUI.framework和Contacts.framework.

这是工作代码.

IMP注意:这仅适用于iOS 9.0以上版本.如果您支持8.0以上,那么添加操作系统检查并使用AddressBook.framework& AddressBookUI.framework

猜你在找的iOS相关文章