2009-09-29 8 views

Répondre

0

Si vous pensez à ce sujet, self.view = picker.cameraOverlayView copie juste une vue transparente vide sur votre propre !! Il n'ajoute même pas à l'écran, pas qu'il travaillerait ...

, vous devez plutôt de présenter le contrôleur de sélecteur:

[self.navigationController presentModalViewController:picker animated:YES]; 

alors assurez-vous de mettre en œuvre les appels des délégués (qui il semble que vous ayez déjà défini le délégué)

1

Essayez-le.

Dans la méthode viewDidLoad, initialisez UIImagePickerController, affectez sa propriété sourceType en tant que UIImagePickerControllerSourceTypeCamera et déléguez-le en tant que self.

configurer un bouton dans votre contrôleur de vue où son événement click obtenir la vue modale du imagepicker, comme:

[self presentModalViewController:self.picker animated:YES]; 

ici sélecteur est l'objet de UIImagePickerController.

Ensuite, implémentez le didFinishPickingMediaWithInfo délégué de UIImagePickerController. Dans ce délégué, vous pouvez attribuer un UIImage à l'info objet Dictionary, puis enregistrez l'image sur votre instance locale de UIImageView (son ImageToSave ci-dessous)

- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info{ 

[[picker parentViewController] dismissModalViewControllerAnimated:YES]; 
UIImage *img = [info objectForKey:@"UIImagePickerControllerImage"]; 
ImageToSave.image = img; 

}

Ne pas oublier d'inclure le UIImagePickerControllerDelegate dans le fichier .h de votre contrôleur principal.

Voir si cela fonctionne ou pas.

Questions connexes