Android ListView組件詳解及示例代碼
Android 列表組件 ListView
列表組件是開發(fā)中經(jīng)常用到組件,使用該組件在使用時(shí)需要為它提供適配器,由適配器提供來確定顯示樣式和顯示數(shù)據(jù)。
下面看一個(gè)例子:
新建一個(gè)項(xiàng)目Lesson8_ListViewTest,Activity name是MainListViewTest 。
MainListViewTest.java的代碼是:
package android.basic.lesson8; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.AdapterView.OnItemLongClickListener; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; public class MainListViewTest extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); //找到ListView ListView lv= (ListView)findViewById(R.id.ListView01); //定義數(shù)組 String[] data ={ "Android開發(fā)基礎(chǔ)篇 第一講", "Android開發(fā)基礎(chǔ)篇 第二講", "Android開發(fā)基礎(chǔ)篇 第三講", "Android開發(fā)基礎(chǔ)篇 第四講", "Android開發(fā)基礎(chǔ)篇 第五講", "Android開發(fā)基礎(chǔ)篇 第六講", "Android開發(fā)基礎(chǔ)篇 第七講", "Android開發(fā)基礎(chǔ)篇 第八講", "Android開發(fā)基礎(chǔ)篇 第九講" }; //為L(zhǎng)istView提供數(shù)組適配器 lv.setAdapter(new ArrayAdapter(this,android.R.layout.simple_list_item_1,data)); //為L(zhǎng)istView設(shè)置列表項(xiàng)點(diǎn)擊監(jiān)聽器 lv.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> parent, View view, int position, long id) { Toast.makeText(getApplicationContext(), "您點(diǎn)擊的是:"+((TextView) view).getText(), Toast.LENGTH_SHORT).show(); } }); //為L(zhǎng)istView設(shè)置長(zhǎng)按監(jiān)聽器 lv.setOnItemLongClickListener(new OnItemLongClickListener(){ @Override public boolean onItemLongClick(AdapterView<?> parent, View view, int position, long id) { Toast.makeText(getApplicationContext(), "您長(zhǎng)按的是:"+((TextView) view).getText(), Toast.LENGTH_SHORT).show(); return false; } }); } }
其中
1、 android.R.layout.simple_list_item_1 是一個(gè)Android系統(tǒng)內(nèi)置的ListView布局方式;我們可以自定義ListView的布局方式。
2、OnItemClickListener是個(gè)接口,用new創(chuàng)建一個(gè)接口的做法是不是有點(diǎn)怪?實(shí)際上這里是建立了一個(gè)匿名類,來滿足setOnItemClickListener()方法的參數(shù)需求。
3、Toast.makeText().show() 的寫法大家可以記一下,可以創(chuàng)造出一個(gè)氣泡提示效果;Toast的具體用法可以看這里。
main.xml的代碼是:
< ?xml version="1.0" encoding="utf-8"?>
好,現(xiàn)在看一下運(yùn)行效果:
點(diǎn)擊其中一個(gè)列表項(xiàng)的時(shí)候會(huì)觸發(fā)Item的onClick事件,彈出一個(gè)氣泡提示框;在一個(gè)選項(xiàng)上長(zhǎng)時(shí)間按著也會(huì)觸發(fā)LongClick事件,彈出另一個(gè)氣泡提示框。
上面的例子用到了系統(tǒng)自帶的android.R.layout.simple_list_item_1布局,使用的是在Java代碼中的數(shù)組做數(shù)據(jù)源;我們?cè)诮酉聛淼睦永锸褂靡淮蝀ML做數(shù)據(jù)源,再使用一下系統(tǒng)自帶的android.R.layout.simple_list_item_2布局,讓我們看看他們的表現(xiàn)有什么不同。
以上就是對(duì)Android ListView 的介紹,后續(xù)繼續(xù)補(bǔ)充相關(guān)知識(shí),謝謝大家對(duì)本站的支持!
- Android App界面的ListView布局實(shí)戰(zhàn)演練
- Android中ListView Item布局優(yōu)化技巧
- android動(dòng)態(tài)布局之動(dòng)態(tài)加入TextView和ListView的方法
- Android仿QQ好友列表分組實(shí)現(xiàn)增刪改及持久化
- Android系統(tǒng)聯(lián)系人全特效實(shí)現(xiàn)(上)分組導(dǎo)航和擠壓動(dòng)畫(附源碼)
- Android實(shí)現(xiàn)在一個(gè)activity中添加多個(gè)listview的方法
- Android ListView的OnItemClickListener詳解
- android listview優(yōu)化幾種寫法詳細(xì)介紹
- android開發(fā)教程之listview使用方法
- Android自定義Adapter的ListView的思路及代碼
- Android實(shí)現(xiàn)的ListView分組布局改進(jìn)示例
相關(guān)文章
Android開發(fā)微信小程序路由跳轉(zhuǎn)方式
這篇文章主要為大家介紹了Android開發(fā)微信小程序路由跳轉(zhuǎn)方式,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步早日升職加薪2022-04-04Android自定義View之邊框文字、閃爍發(fā)光文字
這篇文章主要為大家詳細(xì)介紹了Android自定義View之邊框文字、閃爍發(fā)光文字,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-01-01Android 判斷SIM卡是中國(guó)移動(dòng)\中國(guó)聯(lián)通\中國(guó)電信(移動(dòng)運(yùn)營(yíng)商)
本文給帶來兩種方法來判斷sim卡是屬于哪個(gè)運(yùn)營(yíng)商的,要實(shí)現(xiàn)此功能我們需要先獲取手機(jī)的imsi碼然后在判斷,對(duì)此功能感興趣的朋友一起通過本文學(xué)習(xí)吧2016-09-09Android那兩個(gè)你碰不到但是很重要的類之ActivityThread
上篇文章我們聊了些Android里那些我們平時(shí)碰不到但很重要的類ViewRootImpl,這一篇我們就來看看另外那個(gè)類ActivityThread,文中有相關(guān)的代碼示例,感興趣的同學(xué)可以跟著小編一起來學(xué)習(xí)2023-05-05Flutter音樂播放插件audioplayers使用步驟詳解
audioplayers是一個(gè)可以支持同時(shí)播放多個(gè)音頻文件的Flutter的插件,可以播放多個(gè)同時(shí)的音頻文件,這篇文章主要介紹了audioplayers的使用步驟,感興趣想要詳細(xì)了解可以參考下文2023-05-05Android開發(fā)之CheckBox的簡(jiǎn)單使用與監(jiān)聽功能示例
這篇文章主要介紹了Android開發(fā)之CheckBox的簡(jiǎn)單使用與監(jiān)聽功能,結(jié)合簡(jiǎn)單實(shí)例形式分析了Android使用CheckBox控件的布局與功能實(shí)現(xiàn)技巧,需要的朋友可以參考下2017-07-07Android 異步任務(wù) 設(shè)置 超時(shí)使用handler更新通知功能
這篇文章主要介紹了Android 異步任務(wù) 設(shè)置 超時(shí)使用handler更新通知,文中給大家提到了使用AsyncTask設(shè)置請(qǐng)求超時(shí)的注意事項(xiàng) ,需要的朋友可以參考下2017-12-12Android Studio創(chuàng)建AIDL文件并實(shí)現(xiàn)進(jìn)程間通訊實(shí)例
本篇文章主要介紹了Android Studio創(chuàng)建AIDL文件并實(shí)現(xiàn)進(jìn)程間通訊實(shí)例,具有一定的參考價(jià)值,有興趣可以了解一下。2017-04-04Android編程實(shí)現(xiàn)webview將網(wǎng)頁打包成apk的方法
這篇文章主要介紹了Android編程實(shí)現(xiàn)webview將網(wǎng)頁打包成apk的方法,以打包HTML5為例分析了webview打包apk的相關(guān)方法、屬性與事件操作技巧,需要的朋友可以參考下2017-08-08