Je veux créer une vue (UIControl) qui bloque toutes les entrées et affiche une UIActivityIndicatorView lors de l'authentification d'un utilisateur. Les UIActionSheet et UIAlertView parviennent à ajouter une vue semi-transparente noire sur le dessus de toutes les autres vues pour bloquer l'entrée et j'aimerais faire similaire. J'ai essayé d'ajouter ma vue à l'UIWindow supérieure dans le tableau [[UIApplication sharedApplication] windows], et bien que cela le place au-dessus du UIKeyboard s'il est visible, il ne le place pas sur la StatusBar (qui logique).Ajouter UIView sur toutes les autres vues, y compris StatusBar
Ma tentative suivante consistait à étendre UIAlertView, supprimer toutes ses sous-vues et définir son layer.contents = nil, puis ajouter l'ActivityIndicator en tant que sous-vue. Cela fonctionne bien, mais je ne peux pas sembler tuer la transition bouncy par défaut de l'UIAlertView quand vous l'appelez pour "montrer".
Quelqu'un at-il des indications sur la meilleure façon d'aborder ce problème qui me donne un contrôle total? Oh et je sais que le blocage des entrées n'est pas génial mais je m'assure que c'est pour une courte période de temps et il a l'avantage d'indiquer clairement à l'utilisateur que son action, qui doit se terminer pour qu'elles progressent, est en cours de traitement .
Pourquoi "couvrir" la barre d'état? Pourquoi ne pas le cacher, le rendre translucide, ou simplement l'ignorer entièrement? La barre d'état ne répond pas aux touches, si je me souviens bien. –
Je veux qu'il ressemble à la vue de superposition. Cela indique à l'utilisateur qu'il ne peut pas interagir actuellement. Le rendre translucide n'atteint malheureusement pas ceci, et le cacher semblerait étrange si juste pendant la durée de l'authentification. Et il répond bien aux touches. La valeur par défaut est de faire défiler UIScrollView actif vers le haut. –