60 votes

Quelle est la hauteur maximale de l'iPhone X?

J'aimerais connaître la hauteur exacte de la barre supérieure de l'iPhone X. Pourriez-vous s'il vous plaît mentionner la hauteur de la barre d'état et de la barre de navigation de l'iPhone X. S'il vous plaît, aidez-moi.

entrez la description de l'image ici

92voto

Anbu.Karthik Points 2805

L'écran de l'iPhone X, cependant, est 145pt plus grand qu'un 4.7" écran, résultant en environ 20% d'espace vertical supplémentaire pour le contenu.

pour plus d'informations, vous HIG pour iphone X de la pomme de documents et de la description détaillée dans here1 et cliquez ici2

enter image description here

hauteur de la barre d'état

auparavant 20pt, maintenant 44pt

Parce que des capteurs sur le haut de l'écran, la nouvelle barre d'état est divisé en 2 parties. Si votre INTERFACE utilisateur est en train de faire quelque chose de spécial avec qui, l'espace (précédemment 20pt haut, maintenant 44pt), car il sera plus grand sur l'iPhone X. assurez-vous qu'il peut être changé dynamiquement en hauteur. Une grande chose est que la hauteur ne sera pas modifié si un utilisateur effectue un appel téléphonique ou à l'aide d'une application de navigation, qui en était déjà le cas sur d'autres iPhones.

enter image description here

portrait

La barre de Navigation de hauteur normale 88 et grand titre temps 140

  • Le titre de Standard - 44pt (88pt avec Barre de Statut)
  • Grand titre - 140pt
  • en bas de la barre - 34pt

Paysage

  • Le titre de Standard - 32 points
  • en bas de la barre - 21pt

28voto

skensell Points 33

La barre de navigation est de 44 pt comme d'habitude (quand il n'y a pas de gros titres) et la barre d'état est passée de 20 pt à 44 pt. Voici ce que vous pouvez taper dans le débogueur pour le vérifier:

entrez la description de l'image ici

16voto

Paolo Points 2209

Vous pouvez obtenir par programme la barre de navigation de la hauteur en utilisant safeAreaInsets sur le view dans le contenu de vue-contrôleur:

let navBarHeight = view.safeAreaInsets.top

Cela permettra de tenir compte pour savoir si c'est un grand titre de la barre de navigation ou non, et si oui ou non il y a une barre de recherche attaché à elle.

Voir l' safeAreaInsets documentation pour plus d'informations.

13voto

jkira Points 907

Vous pouvez utiliser la propriété .frame de la barre de navigation pour déterminer la hauteur totale de la zone de la barre supérieure:

ObjC:

 CGRect navbarFrame = self.navigationController.navigationBar.frame;
float topWidth  = navbarFrame.size.width;
float topHeight = navbarFrame.size.height + navbarFrame.origin.y;
 

Je suppose que c'est un peu une triche, mais l'ajout de la hauteur de la barre de navigation avec son origine y semble donner la hauteur totale correcte quel que soit l'appareil.

12voto

Vous pouvez simplement l'obtenir de la manière suivante (Swift 3):

 let barHeight = navigationController?.navigationBar.frame.maxY
 

Pour obtenir une valeur correcte, assurez-vous de l'appeler après avoir défini prefersLargeTitles

 navigationController?.navigationBar.prefersLargeTitles = false
 

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X