標籤:
ListView用於展示大量資料,而資料無法直接傳遞給ListView,需要藉助適配器adapter來完成.
ArrayAdapter是最常用的adapter,可以通過泛型來指定要適配的資料類型.
ArrayAdapter的參數如下:
android.widget.ArrayAdapter.ArrayAdapter<String>(Context context, int textViewResourceId, String[] objects)
建構函式的參數解析如下:
Context context:當前的上下文環境;
int textViewResourceId :指定布局檔案中包含的TextView資源的ID,常用的有android.R.layout.simple_list_item_1,
android.R.layout.simple_list_item_1是一個android內建的布局檔案,只有一個TextView,用於簡單顯示文本;
String[] objects:要顯示的文本
ListView樣本如下:
(該例子摘自《第一行代碼》)
android_main.xml代碼如下:
<ListView android:id="@+id/list_view" android:layout_width="match_parent" android:layout_height="match_parent" > </ListView>
因為ListView需要佔據整個布局,所以選擇了match_parent
MainActivity.java代碼如下:
public class MainActivity extends Activity { private String[] data={"Apple", "Banana", "Orange", "Watermelon", "Pear", "Grape", "Pineapple", "Strawberry", "Cherry", "Mango"}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //建立數組適配器 ArrayAdapter<String> adapter=new ArrayAdapter<String> (MainActivity.this , android.R.layout.simple_list_item_1 , data); //載入列表視圖 ListView listView=(ListView)findViewById(R.id.list_view); //將構建好的配接器物件傳遞進去,建立ListView和資料之間的關聯 listView.setAdapter(adapter); }}
運行效果如下示:
android筆記:ListView及ArrayAdapter