2011-10-21 5 views
0

Est-il possible d'utiliser un seul fichier xml pour la "mise en page entière" (activité)? Pouvez-vous "intégrer" la disposition des lignes, c'est-à-dire dans un fichier séparé, à la liste dans la structure principale xml?utiliser un fichier XML pour une activité?

Il ressemble à quelque chose comme ça

<LinearLayout> 
    ... 
    <ListView> 
    <LinearLayout> 
     <ImageView> 
     <TextView> 
     ... 
    </LinearLayout> 
    </ListView> 
</LinearLayout> 

S'il est possible, comment est-il fait, comment « id » utilisez-vous, adaptateur etc, alors?

Parce que vous pouvez utiliser

<listview> 
... 
</listview> 

et non seulement

<listview .../> 

... Je pensais que ce pourrait être peut-être possible de mettre la disposition de la ligne directement là à l'intérieur, mais ne sais pas comment faire , pour le faire fonctionner si c'est possible. Est-ce? Aimerait avoir un seul fichier XML de mise en page, par activité, au lieu de nombreuses petites parties. Serait plus facile d'obtenir l'image entière alors je pense et simplifier les choses. D'autres façons de le faire peut-être?

+0

Je dirais foo_content.xml, foo_list_item.xml, quux_content.xml, quux_list_item.xml qui n'est pas trop mauvais quand trié par ordre alphabétique imho. – user999717

+0

cela pourrait être un bon pas. Mais voit se savoir que, cette phrase sur organiser des fichiers n'était pas si bon.Je pense qu'il serait plus facile d'avoir tous les fichiers dans un seul fichier au lieu de passer par de nombreux fichiers pour obtenir la "photo" et plus encore. –

Répondre

1

Son sans aucun doute possible d'utiliser XML unique pour listview et sa mise en page des cellules

Il ira comme ça

Vous créez deux mises en page en XML

<LinearLayout android:id="@+id/listview_layout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical">

<ListView android:id="@+id/listview" android:layout_width="match_parent" android:layout_height="wrap_content"/>

</LinearLayout>

<LinearLayout android:id="@+id/cell_layout" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical">

.............do your cell layout here

</LinearLayout>

utiliser ici listview_layout pour la mise en votre ContentView

setContentView(listview_layout)

et utiliser cell_layout dans un adaptateur pour définir la mise en page des cellules

vous trouverez de bons tutoriels pour configurer des adaptateurs personnalisés pour listview sur Stackoverflow

Espérons que cela résoudra votre problème

+0

Je ne vous suis pas, avoir un nouveau bloc linearlayout après le premier (qui est fermé avec sa fin "tag") va obtenir une erreur dans eclispe. –

Questions connexes