1
我想檢查一下iphone phonebook是否已經添加了一個聯繫人,如果添加了那麼我不會添加它,它不會被添加然後我會添加新聯繫人,,,,我只想比較一下如「轉向」的名稱在電話簿中存不存在如何檢查聯繫人是否已添加到iphone電話簿?
我想檢查一下iphone phonebook是否已經添加了一個聯繫人,如果添加了那麼我不會添加它,它不會被添加然後我會添加新聯繫人,,,,我只想比較一下如「轉向」的名稱在電話簿中存不存在如何檢查聯繫人是否已添加到iphone電話簿?
+ (NSArray *) findContactsContainingName: (NSString *) fname
{
// Load the contacts
ABAddressBookRef addressBook = CFAutorelease(ABAddressBookCreate());
NSArray *thePeople = (NSArray *)ABAddressBookCopyArrayOfAllPeople(addressBook);
NSMutableArray *contacts = [NSMutableArray arrayWithCapacity:thePeople.count];
for (id person in thePeople)
[array addObject:[ABContact contactWithRecord:(ABRecordRef)person]];
[thePeople release];
// search the contacts for fname
NSPredicate *pred;
pred = [NSPredicate predicateWithFormat:@"firstname contains[cd] %@ OR lastname contains[cd] %@ OR nickname contains[cd] %@ OR middlename contains[cd] %@", fname, fname, fname, fname];
return [contacts filteredArrayUsingPredicate:pred];
}
ABAddressBookRef addressbook = ABAddressBookCreateWithOptions(Nil, Nil);
NSArray *people = (__bridge NSArray*)ABAddressBookCopyArrayOfAllPeople(addressbook);
NSMutableArray *namearray=[[NSMutableArray alloc] init];
for(id person in people){
NSString *firstNameString = (__bridge NSString*)ABRecordCopyValue((__bridge ABRecordRef)(person),kABPersonFirstNameProperty);
NSLog(@"%@",firstNameString);
[namearray addObject:firstNameString];
}
NSLog(@"%@",namearray);
NSString *yourString = name you want to add;
BOOL identicalStringFound = NO;
for (NSString *someString in namearray) {
if ([someString isEqual:yourString]) {
identicalStringFound = YES;
break;
}
}
if(identicalStringFound)
{
//code you want to perform
}
else
{
//code you want to perform
}
ABAddressBookRef顯示在Xcode 7.3的錯誤..什麼要導入? – 2016-05-05 11:12:36