[Débutant] Gérer les vues trop grandes

sylvainmsylvainm Membre
mars 2015 modifié dans API UIKit #1

Bonjour,


 


Je suis débutant dans le développement ios, après avoir suivi les principaux tutos de débutant parmi les plus connus, je me pose maintenant la question de l'organisation de mes vues.


 


Je me demande donc comment, en général, les développeurs gèrent les dépassements d'écrans. Si je crée une vue dans mon Storyboard, il y a de forte chance que l'ensemble de la vue soit trop grand pour la taille des écrans de certains devices.


 


Je connais bien les UITableView qui permettent d'afficher des données sous forme de liste, mais ce n'est pas très polyvalent si on veut créer une vue " hétérogène ", alors comment faire ? Il y a bien sûr le UIScrollView, mais je n'ai pas l'impression que ce soit utilisé par tous pour ce problème (c'est peut-être une fausse idée que je me fais?).


 


Alors ma question est de savoir quelles sont les différentes méthodes pour permettre à  l'utilisateur de scroller si le contenu est plus grand que son écran ?


 


Par exemple sur cette image:


http://40.media.tumblr.com/a19dec9c6f3892b7884e23c608883a05/tumblr_n9ud81hizB1r71i1jo1_400.png


 


On voit clairement que ce n'est pas uniquement une UITableView car il y a une carte en header et des catégories diverses de données espacées, cela me semble trop complexe pour que toute cette vue soit organisée en une UITableView seule. Cette vue est trop grande pour l'écran, il y a clairement un besoin de scroller, alors comment cette vue est organisée?


 


Voilà , étant débutant, j'ai vraiment du mal à  reconnaitre l'organisation des vues et les objets les plus utilisées pour afficher ses données et pour organiser à  notre manière le design de nos vues.


 


Merci d'avance pour votre attention !

Réponses

  • AliGatorAliGator Membre, Modérateur
    Si dans l'exemple que tu donnes ça me semble être une tableView.

    Avec une MKMapView en tableHeaderView.

    Et un numberOfSectionsForTableView: > 1.

    Et des UITableViewCell customisées, avec différents identifiers.


    ça reste très classique.
  • CéroceCéroce Membre, Modérateur

    L'exemple que tu donnes est très probablement une UITableView.


    On peut aussi utiliser une UIView mise dans une UIScrollView, mais en pratique UITableView est plus simple à  programmer.


  • Joanna CarterJoanna Carter Membre, Modérateur

    Si on voulait avoir la carte toujours visible, on pourrait ajouter une MKMapView et une UITableView comme sous-vues d'une vue qui occupe tout l'écran ; on a le choix.


     


    Mais, n'importe comment les vues sont agencées, si on ne peut pas voir toutes les infos en même temps, peut-être on devrait utiliser un segue vers une deuxième vue ?


  • Effectivement alors c'est très probablement une tableview.


    Je n'arrivais pas à  comprendre comment il était possible de transformer un tableView comme ça, je vais donc fouiller un peu plus sur les sections/header/footers.


     


    Merci pour votre aide !


  • Joanna CarterJoanna Carter Membre, Modérateur
    Mais, peut-être, ce n'est pas une seul vue. Il faut te demander si tu veux les parties, comme la carte, à  suivre le mouvement de la partie liste ou non.
  • FKDEVFKDEV Membre
    Une table view est très pratique pour empiler des views sans avoir à  gérer la scrollview soi-même surtout quand on ne maà®trise pas bien IB.
Connectez-vous ou Inscrivez-vous pour répondre.