Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 3 sur 3
  1. #1
    Membre confirmé
    Inscrit en
    décembre 2008
    Messages
    281
    Détails du profil
    Informations forums :
    Inscription : décembre 2008
    Messages : 281
    Points : 234
    Points
    234

    Par défaut UIScrollView : Problème zoom in

    Bonjour,

    je suis face à un problème assez embêtant...

    Je souhaite faire un scrollview horizontal pour des images de produits.
    Pour ce qui est du remplissage de la scroll view, je télécharge les images puis les ajoutent (avec la méthode addSubview) à des UIImageView que j'ajoute ensuite dans la scrollview.

    Jusque l'a tout fonctionne parfaitement.

    Mon problème vient du fait que j'ajoute ensuite le zoom sur la scrollview avec la méthode :

    Code :
    1
    2
    3
    4
    5
    - (UIView*)viewForZoomingInScrollView:(UIScrollView *)scrollView {
        // Return the view that you want to zoom
        return [self.productImageScrollView getSubViewsByPage:[NSNumber numberWithInteger:[self.scrollPageControl currentPage]]];
    }
    Je donne dans cette fonction l' UIImageView courante.

    Le problème est que quand je zoom, l'image suivante passe par dessus l'image qui est zoomé...

    Je ne sais pas si c'est clair, mais si vous avez des questions je suis à votre écoute.

    Merci
    Paye Tes Dettes - Applciation android.

    DevHackSecure - Pense bête d'un étudiant en informatique - Tutos DEV

    " I also realize that _everybody_ thinks that they are right, and that they are supported by all other right-thinking people. That's just how people work. We all think we're better than average." Linus Torvalds

  2. #2
    Membre confirmé
    Inscrit en
    décembre 2008
    Messages
    281
    Détails du profil
    Informations forums :
    Inscription : décembre 2008
    Messages : 281
    Points : 234
    Points
    234

    Par défaut

    Est ce que je devrais plutôt utiliser une scrollview par image ? une UIView par image ? ou alors le fait d'utiliser directement des UIImageView dans ma ScrollView est correcte ?
    Paye Tes Dettes - Applciation android.

    DevHackSecure - Pense bête d'un étudiant en informatique - Tutos DEV

    " I also realize that _everybody_ thinks that they are right, and that they are supported by all other right-thinking people. That's just how people work. We all think we're better than average." Linus Torvalds

  3. #3
    Membre Expert
    Avatar de FloMo
    Homme Profil pro Florent Morin
    Entrepreneur
    Inscrit en
    juillet 2004
    Messages
    724
    Détails du profil
    Informations personnelles :
    Nom : Homme Florent Morin
    Âge : 30
    Localisation : France

    Informations professionnelles :
    Activité : Entrepreneur
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : juillet 2004
    Messages : 724
    Points : 1 258
    Points
    1 258

    Par défaut

    Un UIScrollView sur la largeur (le "grand" UIScrollView), qui contiendra toutes tes pages produit.

    Ton UIScrollView à une taille de contenu de "nombre de produits X largeur de l'écran".

    Ta page produit est une vue, de manière générale. Idéalement contrôlée par un contrôleur.
    Du coup, pour limiter l'accès aux ressources, le grand UIScrollView n'affichera que 3 vues max (gauche, visible, droite) que tu recycleras via un NSMutableSet.
    Comme ça, tu n'as plus qu'à récupérer la vue déjà montée en mémoire et changer son contenu. Ca sollicite moins le processeur.

    Ta page produit consiste en un UIScrollView avec zoom. Le zoom se fait sur un UIImageViewController.

    Je te conseille fortement de respecter la hiérarchie des contrôleurs et de faire des sous-contrôleurs pour les fiches produit.

    Comme ça, tu maîtriseras mieux ce que tu fais.

    En résumé :
    Code :
    1
    2
    3
    4
    5
    6
    ContainerViewController
      -> View -> ScrollView (pour défilement)
      -> ProductViewController (child de ContainerViewController)
        -> View (contenue dans le scrollview principal) -> ScrollView (pour zoom) -> ImageView
      -> ProductViewController (child de ContainerViewController)
        -> View (contenue dans le scrollview principal) -> ScrollView (pour zoom) -> ImageView
    Bon codage !
    "Il est plus facile de décomposer un problème en ses éléments, forcément plus simples, que de le traiter en sa totalité." (R. Descartes)

    Développeur web et mobile pour des solutions réellement innovantes
    Formateur video2brain / lynda.com

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •