iCulture forum | iPhone, iPad,  iPod touch, Apple TV en iOS

iCulture forum | iPhone, iPad, iPod touch, Apple TV en iOS (https://forum.iculture.nl/)
-   Ontwikkelen voor iOS (https://forum.iculture.nl/f133/development/f58/ontwikkelen-voor-ios/)
-   -   Personen opslaan uit adresboek (https://forum.iculture.nl/f133/development/f58/ontwikkelen-voor-ios/56574-personen-opslaan-adresboek.html)

celaeno2 26-03-10 19:22

Personen opslaan uit adresboek
 
Hallo mensen,

ik ben pas begonnen met de iphone SDK en probeer personen (naam, telefoonnummer en plaatje) uit het adresboek te lezen en deze vervolgens op te slaan :)

Via ABPeoplePickerNavigationController lukt het inmiddels om een telefoonnummer te selecteren, alleen zou ik bij god niet weten hoe je de gegevens netjes in een array kan opslaan op de iphone. Of is hier een speciale manier voor? Weet iemand misschien waar ik de code mee moet uitbreiden of eventueel een tutorial hierover?

Ben benieuwd!

Tot nog toe mijn code:
Code:

-(IBAction) showPicker:(id) sender {
ABPeoplePickerNavigationController *picker = [[ABPeoplePickerNavigationController alloc] init];
 
picker.peoplePickerDelegate = self;
 
//laat alleen de telefoonnummers zien:
 
[picker setDisplayedProperties:[NSArray arrayWithObject: [NSNumber numberWithInt:kABPersonPhoneProperty]]];
 
[self presentModalViewController:picker animated:YES];
[picker release];
}
 
-(void) peoplePickerNavigationControllerDidCancel:(ABPeoplePickerNavigationController *)peoplePicker {
[self dismissModalViewControllerAnimated:YES];
}
 
-(BOOL) peoplePickerNavigationController:(ABPeoplePickerNavigationController *) peoplePickers
shouldContinueAfterSelectingPerson: (ABRecordRef) person {
NSString *naam = (NSString *) ABRecordCopyValue(person, kABPersonFirstNameProperty);
[naam release];
return YES;
}
 
-(BOOL) peoplePickerNavigationController: (ABPeoplePickerNavigationController *) peoplePicker
shouldContinueAfterSelectingPerson: (ABRecordRef) person
property: (ABPropertyID) property
identifier: (ABMultiValueIdentifier) identifier {
 
//sla telefoonnummer op:
 
NSArray *array = [ABContact arrayForProperty:property inRecord:person];
NSString *telefoonnummer = (NSString *) [array objectAtIndex:identifier];
 
 
[self dismissModalViewControllerAnimated:YES];
return NO;
}

;

celaeno2 27-03-10 18:43

Iemand een idee..? Of is mijn vraag wat te vaag?

Whacko 29-03-10 10:24

Inderdaad een beetje vaag wat je nu bedoelt. Als je de nummers in een array wilt opslaan, dan is dat zeer simpel, en verwacht dan ook wel dat je weet hoe dat moet als je met iPhone ontwikkeling bezig bent.
Misschien bedoelde je dat niet en wil je weten hoe je de nummers in een lijst kunt weergeven? dan zou ik eens zoeken op UITableView, en dan wat je vind gebruiken om de lijst te tonen.

celaeno2 30-03-10 01:12

Ok bedankt voor de reactie :) Ik bedoel eigenlijk op welke manier je personen uit het adresboek het beste op disk kan opslaan, zodat ze weer kunnen worden uitgelezen als het programma opstart. Zoals in het programma Picture Dialer.

Of daar een speciale manier voor is? Via save state, core data of inderdaad in een array stoppen en die vervolgens opslaan etc?

Whacko 30-03-10 16:36

Het mooiste is natuurlijk om CoreData te gebruiken, en het in een kleine database op te slaan.

Maar je kunt ze ook in de [NSUserDefaults standardUserDefaults] proppen. Is eigenlijk bedoeld om "instellingen" in op te slaan. Maar als je alleen een lijstje met nummer wilt opslaan, vind ik het zelf een beetje over-kill om daar een database voor te gebruiken.


Alle tijden zijn GMT +2. Het is nu 07:43.