ABPeoplePicker调用所选的数字

时间:2011-05-30 16:56:48

标签: iphone abpeoplepickerview

我正在使用人员选择器,因此用户可以从他们的联系人中选择要在应用中使用的电话号码。

当用户点击该号码时,手机应用程序会打开,并且会调用该号码...

有没有办法阻止这个?

2 个答案:

答案 0 :(得分:2)

看看shouldPerformDefaultActionForPerson:

- (BOOL)personViewController:(ABPersonViewController *)personViewController shouldPerformDefaultActionForPerson:(ABRecordRef)aPerson 
                    property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifierForValue {
            if(property == kABPersonPhoneProperty) {
              //save the number
              return NO;
            }
        return YES;
        }

- 编辑 -

以上方法适用于ABPersonViewController,我误认为是ABPeoplePicker。 ABPeoplePicker的逻辑与上面相同,只是您将使用此委托回调:

- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifier

答案 1 :(得分:0)

我只是忘了在shouldContinueAfterSelectingPerson:方法中返回NO,我不知道你在哪里获得了shouldPerformDecaultActionForPerson:from,它不是委托方法之一