1
我們如何存儲和訪問ABRecordRef
的列表,以便我們可以在另一個課程中使用它,以後再使用?ABRecordRef存儲陣列
我們如何存儲和訪問ABRecordRef
的列表,以便我們可以在另一個課程中使用它,以後再使用?ABRecordRef存儲陣列
您可以從ABRecordRef
類型的記錄中獲得recordId
從 addressBook然後將其轉換爲NSString
。儲存於NSUserDefaults
當你想獲取該記錄......
獲取該recordId
從NSUserDefaults
,將其轉換爲整數
然後用
ABRecordRef myRecord =
ABAddressBookGetPersonWithRecordID(addressBook, recordId);
所以,你會得到您之前保存的記錄。
試試這個:
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];
這應該是它。
我能夠獲取變量的人,我需要將這個變量人存儲在nsuserdefaults或數據庫中,以便我可以檢索保存的數據並稍後處理任何記錄..請爲此指導我。 –
沒錯,所以你需要將每個有關該人的信息存儲到字典或其他集合中,然後將該字典添加到NSUserDefaults。我會在上面調整我的答案。 – Dave
對不起,但即使這不是很有幫助。讓我詳細介紹一下。我需要創建一個包含一些文字和其他圖像的圖像。這部分已經結束了,現在我需要將其設置爲該人員的個人資料照片,即使我能夠在同一班級中完成此操作。現在,如果有人想改變添加的文本,我需要再次更改配置文件圖片,因爲我需要傳遞ABRecordRef作爲參數。爲此,我需要存儲ABRecordRef的列表。 –