1
votes

Comment trouver la hauteur du contrôleur de vue par programme?

J'ai une question simple, comment puis-je trouver la hauteur du contrôleur de vue par programmation quand je l'ai réglé sur forme libre?

Je veux faire quelque chose comme:

let viewControllerHeight = viewController.contentSize.height

Voici ce que j'essaie de trouver

Aussi, comment puis-je publier une image ici sans que ce soit un lien?


2 commentaires

Après avoir gagné plus de réputation, vous débloquez l'avantage d'attachement d'image


self.view.frame.height


4 Réponses :


3
votes

La hauteur de UIViewController n'existe pas car cette classe n'est qu'un CONTRÔLEUR d'une vue. Vous pouvez obtenir la hauteur de sa vue d'une manière très simple

let height = viewController.view.frame.size.height

Veuillez noter que cette valeur peut être incorrecte dans viewDidLoad et que vous devrez la vérifier plus tard. En savoir plus


0 commentaires

0
votes

Essayez ce code:

  let viewControllerHeight = viewController.view.frame.size.height


0 commentaires

1
votes

La taille simulée affecte la taille de la vue de UIViewController dans le Storyboard. Si vous accédez à self.view.frame.size.height dans viewDidLoad () , vous verrez cette valeur. Une fois la vue affichée, dans viewDidAppear () , le cadre de la vue sera ajusté en fonction de la taille de l'écran et de l'orientation de l'appareil sur lequel votre application s'exécute.

Tant que vous n'avez pas suffisamment de représentants, vos photos s'affichent sous forme de liens. Vous pouvez résoudre ce problème en modifiant votre question ou votre réponse et en ajoutant un ! avant l'utilisation du lien, comme je l'ai fait pour votre question.


0 commentaires

0
votes

En fait, la hauteur de la zone de sécurité correspond à la hauteur de votre viewController. Vous pouvez donc le trouver comme ceci

let guide = self.view.safeAreaLayoutGuide
let height = guide.layoutFrame.size.height

Veuillez jeter un œil sur ce lien


0 commentaires