プログラムで連絡先を表示するために、プログラムでこの関数を使用しています。しかし、abpersonview のフィールドをクリックしても何も起こりません。
- (BOOL)personViewController:(ABPersonViewController *) personViewControllershouldPerformDefaultActionForPerson:(ABRecordRef)person property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifier
{
NSLog(@"IN");
return YES;
}
私のクラスには AbPersonView のオブジェクトがあります。以下は私のクラス定義です
#import <UIKit/UIKit.h>
#import <CoreFoundation/CoreFoundation.h>
#import<AddressBookUI/AddressBookUI.h>
@interface ContactTable : UIViewController<UITableViewDataSource,UISearchBarDelegate,UITableViewDelegate,ABNewPersonViewControllerDelegate,UIAlertViewDelegate,ABPersonViewControllerDelegate>
@property CFMutableArrayRef filteredData;
@property CFArrayRef contactAdd;
@property ABRecordRef person;
@property ABAddressBookRef addressBook;
@property ABPersonViewController *currentPersonView;
@property (weak, nonatomic) IBOutlet UISearchBar *contactSearchBar;
@property (weak, nonatomic) IBOutlet UITableView *contactTableView;
@end
そして、私はこのCurrentpersonviewを次のように使用しています
self.currentPersonView=[[ABPersonViewController alloc]initWithNibName:@"ContactTable.h" bundle:nil];
if(isFiltered)
self.person=CFArrayGetValueAtIndex(self.filteredData,indexPath.row);
else
{
NSLog(@"%ld index:%d", CFArrayGetCount(self.contactAdd),indexPath.row);
self.person=(ABRecordRef)CFArrayGetValueAtIndex(self.contactAdd,indexPath.row);
}
self.currentPersonView.displayedPerson=&(*self.person);
self.currentPersonView.allowsEditing=YES;
self.currentPersonView.allowsActions=YES;
[self.navigationController pushViewController:self.currentPersonView animated:YES];
しかし、ABPersonViewをクリックすると、関数の応答が得られません.....
何が問題でしょうか??