iPhone - Supprimer la barre d'état par programme
J'ai fait une application qui implémente la la caméra de l'iPhone.
Lorsque l'utilisateur termine la cueillette de leur image, la barre d'état réapparaît!
Comment assurez-vous que la barre d'état reste caché?
Voici mon code:
-(IBAction)pickImage:(id)sender {
UIImagePickerController *picker = [[UIImagePickerController alloc] init];
picker.delegate = self;
picker.sourceType = UIImagePickerControllerSourceTypeSavedPhotosAlbum;
[self presentModalViewController:picker animated:YES];
}
- (void)imagePickerController:(UIImagePickerController *)picker didFinishPickingMediaWithInfo:(NSDictionary *)info {
[picker dismissModalViewControllerAnimated:YES];
background.image = [info objectForKey:@"UIImagePickerControllerOriginalImage"];
}
Si je fais quelque chose de mal, merci de le signaler!
Merci,
Rafee
source d'informationauteur RafeeJ
Vous devez vous connecter pour publier un commentaire.
Vous pouvez opter pour un autre style d'animation.
Dans iOS 7, il existe une méthode sur UIViewController, "prefersStatusBarHidden". Pour masquer la barre d'état, ajoutez cette méthode à votre vue-contrôleur et retour OUI:
Dans ce cas,Nous utilisons 2 étapes
Dans la première étape:
Ajouter dans l'info.plist: "- Vue-contrôleur d'état basé sur l'apparence de la barre" avec la valeur "NON"
Dans la Deuxième étape: Utilisez/appeler ce code avec le délégué de UIImagePickerController
Avec iOS 7 et versions ultérieures, vous pouvez utiliser le code suivant pour masquer et afficher la barre d'état,
Il semble y avoir un bug dans la rejeter mécanisme de UIViewController associés à UIImagePicker, avec un sourceType = UIImagePickerControllerSourceTypesavedphotosalbum.
Moment de l'appel à dismissModalViewController (en plus de la méthode à l'achèvement:) le UIApplication la barre d'état de la propriété hidden instantanément les changements de YES à NO, et il est établi au moment de monter sur le rejeter...
Ce n'est vraiment évident pour les applications qui utilisent un affichage en plein écran. Mon application en cours de projet, en plus je contrôle le cadre de l'avis du contrôleur de la vue avant de la présenter, de sorte que le UIImagePicker n'est PAS en plein écran. De ce fait, le bug TRÈS évident. J'ai passé 4 ou 5 heures, la détermination de la cause, et ce fut la dernière conclusion certaine, et le bug ne se produit PAS pour sourceType Caméra ni PhotoLibrary.
Donc, si vous voulez une parfaite application en plein écran et souhaitez présenter un bug-free UIImagePicker, éviter UIImagePickerControllerSourceTypesavedphotosalbum
Grand central dispatch est votre ami, en utilisant cette méthode, vous ne voyez pas la barre d'état apparaît lorsque le sélecteur est affiché ou par la suite