溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Android中ListActivity如何使用

發(fā)布時間:2021-06-26 15:02:28 來源:億速云 閱讀:379 作者:Leah 欄目:移動開發(fā)

Android中ListActivity如何使用,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

首先看看android.app包里的幾個類。首先是這個在平臺自的例子中被廣泛使用的Android ListActivity。這個類其實就是一個含有一個ListView組件的Activity類。也就是說,如果我們直接在一個普通的Activity中自己加一個ListView也是完全可以取代這個Android ListActivity的,只是它更方便而已,方便到什么程度呢?來做個例子瞧瞧。

  1. public class HelloTwoB extends ListActivity   

  2. ...{   

  3. public void onCreate(Bundle icicle) ...{   

  4. super.onCreate(icicle);   

  5. setTheme(android.R.style.Theme_Dark);   

  6. setContentView(R.layout.mainb);   

  7. List< String> items = fillArray();   

  8. ArrayAdapter< String> adapter = new ArrayAdapter< String>
    (this,R.layout.list_row,items);   

  9. this.setListAdapter(adapter);   

  10. }   

  11. private List< String> fillArray()   

  12. ...{   

  13. List< String> items = new ArrayList< String>();   

  14. items.add("日曜日");   

  15. items.add("月曜日");   

  16. items.add("火曜日");   

  17. items.add("水曜日");   

  18. items.add("木曜日");   

  19. items.add("金曜日");   

  20. items.add("土曜日");   

  21. return items;   

  22. }   

  23. @Override   

  24. protected void onListItemClick(ListView l, 
    View v, int position, long id)   

  25. ...{   

  26. TextView txt = (TextView)this.findViewById(R.id.text);   

  27. txt.setText("あすは "+l.getSelectedItem().toString()+"です。");   

  28. }   

的確可以簡單到只需準(zhǔn)備一個List對象并借助Adapter就可以構(gòu)造出一個列表。重載onListItemClick方法可以響應(yīng)選擇事件,利用***個參數(shù)可以訪問到這個ListView實例以得到選中的條目信息。這里有一點要說明的,就是如果更簡單的話,其實連那個setContentView都可以不要了,Android也會自動幫我們構(gòu)造出一個全屏的列表。但是本例中我們需要一個TextView來顯示選中的條目,所以我們需要一個layout.mainb描述一下這個列表窗口。

  1. < ?xml version="1.0" encoding="utf-8"?>   

  2. < LinearLayout xmlns:android=
    "http://schemas.android.com/apk/res/android"   

  3. android:orientation="vertical"   

  4. android:layout_width="fill_parent"   

  5. android:layout_height="fill_parent"   

  6. >   

  7. < TextView id="@+id/text"   

  8. android:layout_width="fill_parent"   

  9. android:layout_height="wrap_content"   

  10. android:text=""   

  11. />   

  12. < ListView id="@id/android:list"   

  13. android:layout_width="fill_parent"   

  14. android:layout_height="0dip"   

  15. android:layout_weight="1"   

  16. android:drawSelectorOnTop="false"   

  17. />   

  18. < /LinearLayout>  

在Android ListActivity操作中需要注意的是那個ListView的ID,是系統(tǒng)自定義的android:list,不是我們隨便取的,否則系統(tǒng)會說找不到它想要的listview了。然后,在這個listview之外,我們又增加了一個TextView,用來顯示選中的條目。

再來說說這里用到的ArrayAdapter,它的構(gòu)造函數(shù)中第二個參數(shù)是一個資源ID,ArrayAdapter的API文檔中說是要求用一個包含 TextView的layout文件,平臺用它來顯示每個選擇條目的樣式,這里的取值是R.layout.list_row,所以,我們還有一個list_row.xml文件來描述這個布局,相當(dāng)簡單。

  1. < ?xml version="1.0" encoding="utf-8"?>   

  2. < LinearLayout xmlns:android=
    "http://schemas.android.com/apk/res/android"   

  3. android:orientation="vertical"   

  4. android:layout_width="fill_parent"   

  5. android:layout_height="fill_parent"   

  6. >   

  7. < TextView id="@+id/item"   

  8. xmlns:android="http://schemas.android.com/apk/res/android"   

  9. android:layout_width="wrap_content"   

  10. android:layout_height="wrap_content"/>   

  11. < TextView id="@+id/item2"   

  12. xmlns:android="http://schemas.android.com/apk/res/android"   

  13. android:layout_width="wrap_content"   

  14. android:layout_height="wrap_content"/>   

  15. < /LinearLayout>  

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注億速云行業(yè)資訊頻道,感謝您對億速云的支持。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI