Membuat Item Baris Tersuai untuk Paparan Senarai Android: Panduan Terperinci
Dalam artikel ini, kami akan meneroka cara membuat item baris tersuai untuk ListView dalam aplikasi Android.
Cabaran
Kami mempunyai ListView yang memerlukan baris dengan reka letak berikut:
HEADER Text
The Teks "HEADER" kekal statik, manakala kandungan "Teks" berubah secara dinamik.
Pendekatan Awal
Pada mulanya, kami cuba mengisi tatasusunan Rentetan, menghantarnya ke ArrayAdapter, dan menetapkannya setiap kali data berubah:
data_array = populateString(); adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, android.R.id.text1, data_array); listView.setAdapter(adapter);
Walau bagaimanapun, pendekatan ini tidak memberikan hasil yang diingini kerana reka letak sedia ada tidak dapat memaparkan data dalam format yang ditentukan.
Reka Letak Baris Tersuai
Untuk mengatasi had ini, kami akan membuat reka letak tersuai untuk item baris:
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>
Reka Letak XML Utama
Seterusnya, laraskan susun atur XML utama untuk memasukkan ListView:
<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>
Penyesuai
Kami kini mentakrifkan penyesuai:
<code class="java">class yourAdapter extends BaseAdapter { // ... (the adapter code) ... @Override public View getView(int position, View convertView, ViewGroup parent) { // ... (customizing view) ... TextView text = (TextView) vi.findViewById(R.id.text); text.setText(data[position]); return vi; } }</code>
Aktiviti Java
Akhir sekali, dalam aktiviti Java:
<code class="java">public class StackActivity extends Activity { // ... (the activity code) ... @Override public void onCreate(Bundle savedInstanceState) { // ... (setting up listview) ... listview.setAdapter(new yourAdapter(this, new String[] { "data1", "data2" })); } }</code>
Dengan mengikuti langkah-langkah ini, anda boleh membuat item baris tersuai untuk ListView, membenarkan lebih fleksibiliti dan penyesuaian dalam pembentangan data anda.
Atas ialah kandungan terperinci Bagaimana untuk Menyesuaikan Item Baris dalam Android ListView: Panduan Langkah demi Langkah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!