2010-08-21 4 views
0

J'ai un fichier de mise en page complexe avec de nombreux TextView et EditText placés sur le canevas. La mise en page doit être un ScrollView afin de fonctionner correctement pour l'utilisateur. Le problème est que 2 champs devraient vraiment être ListView avec tout le formatage qui vient avec eux. Aucune de ces listes ne comptera plus de 10 lignes. J'utilise actuellement un TextView en créant une chaîne longue à partir des données et en l'affichant. Le problème est que je ne peux pas mettre en forme le texte dans TextView comme je peux dans un ListView.android ListView remplacement pour ScrollView

Comme je ne peux pas placer ListView dans un ScrollView, j'ai besoin de le simuler en utilisant un TextView. J'ai besoin de formater les données dans des colonnes comme je le ferais dans un ListView, avec l'emballage de données dans le deuxième champ d'affichage, étant une police différente basée sur la condition de lignes.

Est-il possible de formater les données dans un TextView pour ressembler à des données dans un ListView tel que ci-dessous:

21 This is the data for NA 
    this item. 

1/2 This is the data for Q 
    the second item. 

3 This data should be a NA 
    different font. 

Quelqu'un peut-il me dire comment faire?

Répondre

1

Utilisez plus d'un TextView, probablement dans un TableLayout à l'intérieur d'un ScrollView.

+0

Cela n'a pas fonctionné. J'ai déjà essayé d'utiliser plus de TextViews dans un talelayout (30 d'entre eux). Je les ai mis à layout_height = "wrap_content", mais ils ne sont pas enveloppants. Je pense que cela pourrait avoir quelque chose à voir avec la modification de la visibilité entre le passé et le visible. – miannelle

+1

@miannelle: Il n'y a rien de magique dans un 'ListView' qui provoque le retour à la ligne du texte. Si vous ne pouvez pas le faire avec 'TextViews', alors vous ne pouvez pas le faire avec un' ListView'. En ce qui concerne 'TableLayout', ajoutez' android: shrinkColumns = "1" '(en supposant que l'index de la colonne 1 est celui avec le texte long). – CommonsWare