Maison >Java >javaDidacticiel >Comment créer un ListView avec un en-tête statique et du texte dynamique dans chaque ligne ?
Personnalisation de la disposition des lignes ListView avec en-tête statique et texte dynamique
Cette question concerne la personnalisation des dispositions de lignes ListView pour inclure un en-tête statique et dynamiquement changer de texte. Le demandeur a créé un ListView avec des données remplies à partir d'un tableau String à l'aide d'un ArrayAdapter, mais il rencontre des difficultés à afficher le format de mise en page souhaité.
Solution :
Pour y parvenir la mise en page spécifiée, suivez ces étapes :
La classe d'adaptateur inclut des méthodes telles que getCount (), getItem(), getItemId() et getView(), qui gèrent la gestion des données et la création de vues.
Voici un exemple d'implémentation :
row.xml :
<code class="xml"><?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Header" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/text" /> </LinearLayout></code>
main.xml :
<code class="xml"><?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" > <ListView android:id="@+id/listview" android:layout_width="fill_parent" android:layout_height="fill_parent" > </ListView> </LinearLayout></code>
Adaptateur personnalisé :
<code class="java">class yourAdapter extends BaseAdapter { ... @Override public View getView(int position, View convertView, ViewGroup parent) { View vi = convertView; if (vi == null) vi = inflater.inflate(R.layout.row, null); TextView text = (TextView) vi.findViewById(R.id.text); text.setText(data[position]); return vi; } }</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!