2010-07-04 7 views
0

Existe-t-il un moyen de placer des widgets/vues sur l'écran à n'importe quelle position spécifique requise?Vues de position à un endroit spécifique?

Quelque chose comme un calendrier avec des événements quotidiens qui pourraient se chevaucher. par exemple. Si toutes les heures d'une journée sont représentées par une heure et qu'il y a deux rendez-vous qui se chevauchent partiellement (disons 12h00-12h30 et 12h20-1h00), cela sera dessiné dans la même rangée mais 12:20 un placé légèrement au-dessous du premier.

Il peut également y avoir des vues (Image/TextView) qui doivent s'étendre sur 2 lignes (c'est-à-dire 12:30 - 1:30).

Je pense qu'un SurfaceView est une option (est-ce efficace?) Mais je ne suis pas sûr s'il y a une meilleure disposition qui pourrait être utilisée.

Nous pourrions utiliser un TableLayout pour les lignes d'heures mais ne savez pas s'il existe un moyen de placer des widgets qui se chevauchent sur cela?

TIA

Répondre

0

Réponse officielle: créer votre propre classe de gestionnaire de mise en page qui implémente les règles que vous voulez.

Réponse plus facile mais légèrement en désordre: utilisez un RelativeLayout et des marges pour positionner vos widgets. Pour que les widgets se chevauchent, faites en sorte que celui qui doit être en haut soit un enfant plus tard dans la mise en page (par exemple, plus bas dans la liste des éléments XML enfant dans un fichier de mise en page).

Ce que vous ne voulez pas: AbsoluteLayout. C'est obsolète.

Questions connexes