6
votes

Détecter le défilement dans la sous-classe d'UiscrollView

Bonjour,

J'ai créé une sous-classe d'Uiscrollview et je veux maintenant savoir quand l'utilisateur défile dans ma sous-classe. Pour cela, je l'ai implémenté comme suit: p>

imagescroller.h p> xxx pré>

imagescroller.m (dans la @Implemensation) p>

 - (id)initWithCoder:(NSCoder *)aDecoder {
    if ((self = [super initWithCoder:aDecoder])) {
        self.directionalLockEnabled = YES;
        [self setDelegate:self];
    }
    return self;
}


0 commentaires

3 Réponses :


4
votes

Je pense que vous pouvez essayer de définir self.delegate = moi; recevoir des événements.


3 commentaires

J'ai essayé comme ça, mais ça ne marche pas pour une raison quelconque. - (ID) InitwithCoder: (nscoder *) Adecoder {if ((((SOFT = [Super InitwithCoder: Adecoder])) {Self.DirectionAllockenabled = Oui; [Self SetDelegate: auto]; } retourne moi; }


J'ai ajouté une envoi de ScrollView à mon fichier XIB et j'ai défini la classe sur My Imagescroller. Je définissai également le propriétaire du fichier et j'utilise l'Uiscrollviewelegate dans le fichier .h-fichier de la visionController ainsi que la mise en œuvre de la méthode ScrollViewDidscroll dans le fichier .m. Est-ce peut-être un problème?


Je n'ai pas eu la première fois :) Donc, votre méthode de déléguée fonctionne, mais uniquement dans votre délégué (la vue de défilement)? Bien que ce soit la façon dont les choses sont censées être, car il n'y a qu'un seul délégué. Je pense que vous pourriez définir le délégué à votre contrôleur, puis le rendre somenhing comme celui-ci - (vide) ScrollViefDidscroll: (uiscrollview *) ScrollView {// Contrôleur Stuff ici [Self.View ScrollViewidscroll: (Uiscrollview *) Soi. voir]; } Mais je ne suis toujours pas sûr que c'est le problème.



14
votes

J'ai couru dans le même problème créant une sous-classe de l'Uiscrollview mais la résolu de cette façon. Comme mentionné ci-dessus, vous pouvez vous configurer (instance de sous-classe) comme le délégué, mais c'est ce que j'ai fait.

dans la classe de classe I exclète les méthodes suivantes xxx comme Loin que l'autre UISCrollViewelegate , le contrôleur d'affichage doit être responsable de la gestion de ceux à mon avis.


0 commentaires

3
votes

Si quelqu'un recherche une réponse rapide, c'est aussi simple que ceci: xxx


0 commentaires