est-il possible de "cacher" les défileurs d'un NSScrollView et d'obtenir un comportement de défilement gestuel? P>
5 Réponses :
Pourquoi ne pas juste l'essayer? P>
Pour répondre à la question: Oui, si l'utilisateur a la souris avec une roue de défilement ou un pavé tactile capable de défilement, il est toujours possible de faire défiler la vue, malgré les défileurs invisibles. P>
Je ne sais pas ce que je fais mal. Je peux faire défiler avec mon trackpad lorsque Séthashorizontalscroller: Oui, mais pas si Séthashorizontalscroller: non.
provoque la vision de ScrollVieille de ne pas afficher un défilement et ne répondez pas au défilement gestuel:
-setHasHorizontalScroller:YES -setHidden:YES
Je pense que vous pensez peut-être que vous voulez dire "oui provoque un défileur handicapé pas b> à afficher, mais il répond à défilement gestuel", non?
Créez une sous-classe NSScroller et définissez-la comme défileur vertical / horizontal de l'instance NSScrollView.
La sous-classe NSScroller devrait remplacer ceci (10,7 et plus): p>
Ceci est définitivement un bogue dans AppKit. J'ai pu obtenir cela fonctionnant sur 10.8.5 en utilisant l'une des solutions suivantes:
2) strong> back-back and Momentum semble brisé lors de l'utilisation de l'héritage style. Il brise également partiellement Scroll Synchronisation A > code. Il provoque la réinitialisation des vues de défilement pour réinitialiser la position de défilement si l'un est Nsscrolstyverlay code> et l'autre est
Nsscrolstylelegacy code>. Si la vue de défilement de type superposition est défilée, le style hérité est défilé, il réinitialise les deux vues de défilement sur le décalage de défilement Y = 0. P>
[self.scrollView setHasVerticalScroller:YES];
[self.scrollView setScrollerStyle:NSScrollerStyleLegacy];
[self.scrollView setHasVerticalScroller:NO];
Oui, c'est possible. Essayez ceci peu après l'initialisation de la vision de ScrollView.
self.scrollView.wantsLayer = YES;