ABRecordRef
これを別のクラスで後で使用できるように、リストを保存してアクセスするにはどうすればよいですか?
質問する
828 次
2 に答える
2
recordId
addressBookのタイプのレコードから取得できます。ABRecordRef
次にそれをに変換しNSString
ます。に保存するNSUserDefaults
レコードを取得したいとき...
recordId
からそれをフェッチしNSUserDefaults
、整数に変換します
次に使用します
ABRecordRef myRecord =
ABAddressBookGetPersonWithRecordID(addressBook, recordId);
したがって、以前に保存したレコードを取得します。
于 2011-08-09T12:31:00.707 に答える
1
これを試して:
ABAddressBookRef addressBook = ABAddressBookCreate();
ABRecordRef person = ABRecordGetRecordID(1); // Or whatever you're using to get the record.
// do this for each piece of information you need:
NSString *firstName = (NSString *)ABRecordCopyValue(person, kABPersonFirstNameProperty);
NSString *lastName = (NSString *)ABRecordCopyValue(person, kABPersonLastNameProperty);
// Get your receiving dict ready:
NSMutableDictionary *personDict = [NSMutableDictionary dictionary];
// then test them for a value (don't want nil values in the dictionary)
// Add each value as you test it.
if (firstName) {
[personDict setObject:firstName forKey:@"FistName"];
}
if (lastName) {
[personDict setObject:lastName forKey:@"LastName"];
}
// Add the personDict to NSUserDefaults:
[[NSUserDefaults standardDefaults] setObject:personDict forKey:@"MyPersonsDictionary"];
// Clean up after yourself:
[firstName release];
[lastNmae release];
それだけです。
于 2011-08-08T13:08:38.123 に答える