Je suis nouveau dans le développement d'applications Android et j'expérimente actuellement diverses idées d'interface utilisateur. Dans l'image ci-dessous, vous pouvez voir une liste déroulante verticalement des galeries de défilement horizontalement (et aussi des textviews comme vous pouvez le voir). Je fais aussi des transformations de matrices et de caméras auxquelles je reviendrai dans une minute.Android - Transformer des widgets dans des widgets transformés et les problèmes d'utilisabilité qui en résultent
Pour l'arrière-plan des éléments de la liste, j'utilise le vert. Le bleu est l'arrière-plan des galeries, et le rouge est l'arrière-plan des images. Ce sont juste pour mon avantage d'apprendre.
Les galeries utilisées sont des classes étendues où j'ai remplacé la méthode drawChild pour effectuer une opération d'échelle de canevas afin que l'image la plus proche du centre (largeur) soit plus grande que les autres.
La vue de liste allant verticalement, j'ai remplacé la méthode drawChild et utilisé les rotations de caméra à partir de la dimension de manque de profondeur dans la fonctionnalité de canevas. Les éléments de la liste sont réduits et pivotés par rapport à la proximité de leur position par rapport au centre (hauteur). J'ai compris que le défilement et le clic ne suivraient pas nécessairement les transformations de l'image, mais il semble que le dessin de la classe parent soit également contraint aux coordonnées d'origine (voir photo ci-dessous). J'aimerais connaître votre avis sur la façon dont je peux changer les coordonnées des galeries dans ce qui est rendu via le défilement de la galerie et la réactivité tactile de cette galerie.
images dans la galerie ne sont pas mêmes dimensions, alors ne vous laissez pas jeter à regarder l'image ci-dessous
Merci à l'avance!
Ben
link to image (n'a pas pu intégrer)
- - Mise à jour: j'utilisais mon interface utilisateur de l'application de test et a remarqué que quand je suis arrivé l'interface utilisateur au point de l'image liée et J'ai touché la partie supérieure de la rangée suivante de la liste, la galerie a été mise à jour pour afficher la représentation appropriée. J'ai donc ajouté un appel à clearFocus() dans la méthode drawChild, ce qui a permis d'obtenir un dessin plus précis. Cela semble un peu plus lent, et puisque je suis sur l'incroyable, je suis inquiet que ce soit une solution gonflée. Quoi qu'il en soit, j'apprécierais quand même votre avis sur la meilleure façon d'afficher correctement les vues et de traduire les événements tactiles dans la nouvelle zone affichée de la galerie en coordonnées tactiles afin de faire défiler les images réelles fonctionne quand la galerie a déménagé.
Merci!