2010-09-02 8 views
1

J'essaie de mettre en œuvre une vue similaire à l'affichage des contacts dans l'application iPhone Message (SMS). Lors de la composition d'un message sur iPhone, il y aura un bouton "+" pour ajouter des contacts. Au clic de "+", il montrera la liste des contacts et juste en sélectionnant un contact, il ajoutera le nom du contact dans le champ de texte "À". J'ai trouvé le code suivant pour montrer les contacts. Mais sur un clic d'un contact, il montre plus de détails sur le contact et tout simplement pas sélectionné.iPhone - Voir comme SMS Contacts voir

ABPeoplePickerNavigationController* picker; 
picker = [[ABPeoplePickerNavigationController alloc] init]; 
picker.peoplePickerDelegate = self; 

CGRect newFrame = picker.view.frame; 
newFrame.size.height = newFrame.size.height - 49; 
picker.view.frame = newFrame; 

[self presentModalViewController:picker animated:NO]; 
[picker release]; 

Est-ce qu'une partie du corps peut m'indiquer la bonne manière de choisir un contact?

Répondre

1

J'ai trouvé la solution. Je dois implémenter les méthodes de délégué pour gérer cela. Les méthodes suivantes sont les délégués

- (void)peoplePickerNavigationControllerDidCancel:(ABPeoplePickerNavigationController *)peoplePicker { 

[self dismissModalViewControllerAnimated:YES]; 

}

- (BOOL)peoplePickerNavigationController: (ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person 

{ . . . . [self dismissModalViewControllerAnimated: YES];

return NO; 

}

- (BOOL)peoplePickerNavigationController:(ABPeoplePickerNavigationController *)peoplePicker shouldContinueAfterSelectingPerson:(ABRecordRef)person 
          property:(ABPropertyID)property identifier:(ABMultiValueIdentifier)identifier 

{
retour NO; }