Android組件實(shí)現(xiàn)列表選擇框功能
android提供的列表選擇框(Spinner)相當(dāng)于web端用戶注冊時的選擇下拉框,比如注冊候選擇省份城市等。如下圖便是一個列表選擇框
下拉列表的列表選擇項(xiàng)能夠通過xml文件的android:entries屬性指定,或是在java代碼中導(dǎo)入,屬性android:prompt是列表項(xiàng)的標(biāo)題。
一 列表項(xiàng)數(shù)據(jù):
實(shí)際運(yùn)用當(dāng)中,很多下拉列表項(xiàng)的數(shù)據(jù)實(shí)際是可知的,可以放在xml資源文件中。這時,開發(fā)者可以通過xml屬性進(jìn)行指定數(shù)據(jù)。
除了資源文件之外,開發(fā)者還能夠使用適配器適配數(shù)據(jù)源。(適配器:如果您的電腦不能接收藍(lán)牙信號,你可以安裝藍(lán)牙適配器用來接收藍(lán)牙信號。功能就是把不符合自己的信號或數(shù)據(jù)轉(zhuǎn)化符合自己的形式)
二 關(guān)于監(jiān)聽
用戶在下拉列表進(jìn)行選擇以后,程序需要進(jìn)行相應(yīng)的相應(yīng)處理,這就需要監(jiān)聽器。列表選擇框的監(jiān)聽器是OnItemSelectedListener(),開發(fā)者重寫OnItemSelected()方法。
三 案例操作
1.創(chuàng)建一個資源文件配置的列表選擇框
1>新建工程,在布局中加入Spinner,指定屬性android:entries為Data
2>創(chuàng)建一個xml資源文件,命名array.xml,在文件中再添加一個字符串?dāng)?shù)組,名稱Data
3>對Spinner添加監(jiān)聽。監(jiān)聽當(dāng)中有兩個方法,分別是選擇之后和未做選擇的方法
4>運(yùn)行程序,能夠看到下拉列表,而且有日志輸出
2.通過適配器進(jìn)行數(shù)據(jù)適配
給下拉列表指定數(shù)據(jù)適配器通常需要三個步驟:
1.創(chuàng)建數(shù)據(jù)適配器,一般采用ArrayAdapter。創(chuàng)建通常使用兩種方法:
2.設(shè)置列表下拉選擇樣式
3.將適配器添加給下拉列表
具體操作如下:
1>通過資源文件創(chuàng)建設(shè)配器并設(shè)置下拉樣式
ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.Data, android.R.layout.simple_dropdown_item_1line); Spinner s = (Spinner)findViewById(R.id.spinner1); s.setAdapter(adapter);
2>通過字符串?dāng)?shù)組創(chuàng)建并設(shè)置下拉樣式
String [] data = new String[]{"中國","捷克","日本","南京","重慶","成都"}; ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line,data); Spinner s = (Spinner)findViewById(R.id.spinner1); s.setAdapter(adapter);
總結(jié):其實(shí)說了這么多,本節(jié)Spinner下拉框的使用無非著重于下拉框數(shù)據(jù)的設(shè)置:采用xml指定數(shù)據(jù)源資源文件,或是適配器適配。適配器的定義也有兩種,讀取資源文件,或自行定義數(shù)組創(chuàng)建適配器。
以上所述是小編給大家介紹的Android組件實(shí)現(xiàn)列表選擇框功能,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
Flutter沉浸式狀態(tài)欄/AppBar導(dǎo)航欄/仿咸魚底部凸起導(dǎo)航欄效果
這篇文章主要介紹了Flutter沉浸式狀態(tài)欄/AppBar導(dǎo)航欄/仿咸魚底部凸起導(dǎo)航欄效果,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-04-04RecyclerView焦點(diǎn)跳轉(zhuǎn)BUG優(yōu)化的方法
這篇文章主要介紹了RecyclerView焦點(diǎn)跳轉(zhuǎn)BUG優(yōu)化的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-04-04Android?無障礙服務(wù)?performAction?調(diào)用過程分析
這篇文章主要介紹了Android?無障礙服務(wù)?performAction?調(diào)用過程分析,無障礙服務(wù)可以模擬一些用戶操作,無障礙可以處理的對象,通過類?AccessibilityNodeInfo?表示,通過無障礙服務(wù),可以通過它的performAction方法來觸發(fā)一些action2022-06-06Flutter 狀態(tài)管理scoped model源碼解讀
這篇文章主要為大家介紹了Flutter 狀態(tài)管理scoped model源碼解讀,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-11-11android中LinearLayoutManager一鍵返回頂部示例
本篇文章主要介紹了android中LinearLayoutManager一鍵返回頂部,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-02-02Android通過記住密碼功能學(xué)習(xí)數(shù)據(jù)存儲類SharedPreferences詳解及實(shí)例
這篇文章主要通過“記住密碼”實(shí)例功能學(xué)習(xí)為大家介紹了Android數(shù)據(jù)存儲類SharedPreferences,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-03-03Android實(shí)現(xiàn)View滑動效果的6種方法
這篇文章主要介紹了Android實(shí)現(xiàn)View滑動的6種方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-03-03Android 修改Preferences默認(rèn)樣式的步驟
這篇文章主要介紹了Android 修改Preferences默認(rèn)樣式的步驟,幫助大家更好的理解和學(xué)習(xí)使用Android開發(fā),感興趣的朋友可以了解下2021-04-04