Une question très basique sur les View Controllers

colas_colas_ Membre
avril 2015 modifié dans API UIKit #1

Bonjour !


 


Je suis en train de designer un View Controller qui est censé prendre toute la place de l'écran. Je développe pour iPad, en mode landscape.


 


Mon VC contient une sous-vue, dont la taille est contrôlée par des contraintes. Cette vue est censée recevoir d'autres vues (d'autres ViewControllers en fait).


 


Réponses

  • DrakenDraken Membre
    avril 2015 modifié #2

    Tu peux obtenir la taille physique de l'écran avec :



    // En Swift
    let monEcran:CGRect = UIScreen.mainScreen().bounds


    pour la comparer à  la taille de ta vue.

  • Si j'ai bien compris, tu veux utiliser un container view controller dans un ViewController. Les contraintes ne s'ajoutent pas automatiquement, c'est toi qui doit imposer des contraintes à  tes vues. Il existe cependant un bouton dans IB te permettant d'ajouter toutes les contraintes nécessaires automatiquement en fonction des dispositions sur ton ViewController. Si dans beaucoup de cas c'est suffisant, il arrive que parfois tu aies besoin de définir toi même les contraintes afin qu'elles s'agencent bien entre elles et qu'elles répondent parfaitement à  tes besoins. Ce bouton se trouve tout en bas de IB et se nomme "Resolve Auto layout issues"


     


    Pour la disposition sur iPad, je n'ai pas très bien compris. Si tu utilises les Size Class, tu dois sélectionner le bon mode selon ce que tu souhaites comme disposition. Ici si c'est en paysage, selectionner Regular Width & Regular Height semble une solution intéressante dans ton cas. En faisant ceci, ça voudra dire qu'en gros la vue que tu dessines dans ce cadre là  s'appliquera pour tous les iPads en portrait et paysage.


     


    Enfin, pour savoir si ta sous-vue sera bien placée, tu peux utiliser la preview. Mais j'ai trouvé que ça ne marche pas très bien jusqu'ici, du moins pas toujours. Pour tester si c'est bon faut passer sur device ou simulateur. 


  • colas_colas_ Membre
    avril 2015 modifié #4

    @Magiic a priori, je ne voulais pas utiliser de container view controller... et non, je n'utilise pas les sizeClass !


  • Si ta sous vue est contenue dans un ViewController et que celle-ci doit faire apparaà®tre des ViewControllers, il serait préférable d'utiliser le container view controller qui s'adapte bien à  cette utilisation.

  • Merci @magiic je vais suivre ton conseil. Personne ne sait comment marche l'option full size ?
Connectez-vous ou Inscrivez-vous pour répondre.