0

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

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

有没有办法阻止这种情况?

4

2 回答 2

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;
        }

- 编辑 -

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

- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifier
于 2011-05-30T17:59:55.730 回答
0

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

于 2011-05-31T19:29:41.607 回答