欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android  Spinner列表選擇框的應(yīng)用

 更新時(shí)間:2017年07月30日 14:38:12   投稿:lqh  
這篇文章主要介紹了Android Spinner列表選擇框的應(yīng)用的相關(guān)資料,這里對(duì)spinner的屬性和常用事件和數(shù)據(jù)綁定都做了介紹,需要朋友可以參考下

Android  Spinner列表選擇框的應(yīng)用

Spinner 是 Android 的列表選擇框,不過(guò) spinner 并不需要顯示下拉列表,而是相當(dāng)于彈出一個(gè)菜單供用戶選擇。

Spinner 屬性:

● android:spinnerMode:列表顯示的模式,有兩個(gè)選擇,為彈出列表(dialog)以及下拉列表(dropdown),如果不特別設(shè)置,為下拉列表。
● android:entries:使用<string-array.../>資源配置數(shù)據(jù)源。
● android:prompt:對(duì)當(dāng)前下拉列表設(shè)置標(biāo)題,僅在dialog模式下有效。傳遞一個(gè)“@string/name”資源,需要在需要在資源文件中定義<string.../>。

Spinner 常用事件:

● AdapterView.OnItemCLickListener:列表項(xiàng)被點(diǎn)擊時(shí)觸發(fā)。
● AdapterView.OnItemLongClickListener:列表項(xiàng)被長(zhǎng)按時(shí)觸發(fā)。
● AdapterView.OnItemSelectedListener:列表項(xiàng)被選擇時(shí)觸發(fā)。

Spinner 數(shù)據(jù)綁定:

● 使用xml設(shè)置數(shù)組資源,簡(jiǎn)單方便但是不靈活,如果只是顯示固定的簡(jiǎn)單數(shù)據(jù)可以使用。
● 使用 adapter 接口設(shè)置,最常見(jiàn)的方式,動(dòng)態(tài)加載靈活,可以設(shè)置各種樣式和數(shù)據(jù)來(lái)源。

XML 文件結(jié)構(gòu)(一般寫在string.xml文件中)

<resource>
 <string-array name="arrayname">
  <item>item1</item>
  <item>item2</item>
  <item>item3</item>
 </string-array>
<resource>

對(duì)于簡(jiǎn)單的數(shù)據(jù)可以使用 ArrayAdapter 來(lái)設(shè)置適配器,但是對(duì)于稍微復(fù)雜的數(shù)據(jù) ArrayAdapter 就無(wú)法滿足需求了,這時(shí)需要使用 SimpleAdapter 來(lái)做適配。

SimpleAdapter 適配器同樣基礎(chǔ)自 Adapter,他可以映射靜態(tài)的 XML 格式的布局文件到視圖中。可以指定 List<Map<P,T>> 格式數(shù)據(jù),list 的數(shù)據(jù)對(duì)應(yīng) Spinner 中的每一行,Map 中的數(shù)據(jù)對(duì)應(yīng)沒(méi)一條數(shù)據(jù) mSpinner = (Spinner)findViewById(R.id.sp_bank);

mSpinner = (Spinner)findViewById(R.id.sp_bank);
banklist = (List<String>) resultMap.get("list");
 
//將可選內(nèi)容與ArrayAdapter連接起來(lái)
adapter = new ArrayAdapter<String>(self, R.layout.simple_spinner_item, banklist);
 
//設(shè)置下拉列表的風(fēng)格
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
 
//將adapter 添加到spinner中
mSpinner.setAdapter(adapter);
 
//添加事件Spinner事件監(jiān)聽(tīng)
mSpinner.setOnItemSelectedListener(new SpinnerSelectedListener());
class SpinnerSelectedListener implements OnItemSelectedListener {
 public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
  String str = parent.getItemAtPosition(position).toString();
  //Toast.makeText(self, "你點(diǎn)擊的是:"+str, 2000).show();
  bankname = str;
 }
 public void onNothingSelected(AdapterView<?> arg0) {
 }
}

Spinner 彈出列表事件上是 listview,所以 listview 的各種方法都可以用在 Spinner 彈出窗口這里,當(dāng)時(shí)也可以自定義數(shù)據(jù)源,自定義 Adapter 繼承 BaseAdapter 實(shí)現(xiàn)更為靈活更為復(fù)雜的效果。

Spinner 在初始化時(shí)會(huì)自動(dòng)調(diào)用一次 OnItemSelectedListener 事件,這是因?yàn)橄到y(tǒng)會(huì)自動(dòng)加載默認(rèn)值造成的。

解決方法:手動(dòng)添加默認(rèn)值,這里需要主要調(diào)用順序,必須在注冊(cè)方法之前調(diào)用。

//在事件注冊(cè)之前調(diào)用,一般指定第0個(gè)為默認(rèn)值
spinner.setSelection(0, true);

以上就是對(duì)Android Spinner的實(shí)例詳解,如有疑問(wèn),請(qǐng)留言或者到本站社區(qū)交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • Android中okhttp3.4.1+retrofit2.1.0實(shí)現(xiàn)離線緩存

    Android中okhttp3.4.1+retrofit2.1.0實(shí)現(xiàn)離線緩存

    這篇文章主要介紹了Android中okhttp3.4.1結(jié)合retrofit2.1.0實(shí)現(xiàn)離線緩存,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • 匯總Android視頻錄制中常見(jiàn)問(wèn)題

    匯總Android視頻錄制中常見(jiàn)問(wèn)題

    這篇文章主要匯總了Android視頻錄制中常見(jiàn)問(wèn)題,幫助大家更好地解決Android視頻錄制中常見(jiàn)的問(wèn)題,需要的朋友可以參考下
    2015-12-12
  • Android簡(jiǎn)單自定義音樂(lè)波動(dòng)特效圖

    Android簡(jiǎn)單自定義音樂(lè)波動(dòng)特效圖

    這篇文章主要為大家詳細(xì)介紹了Android簡(jiǎn)單自定義音樂(lè)波動(dòng)特效圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-04-04
  • Android打造炫酷進(jìn)度條效果

    Android打造炫酷進(jìn)度條效果

    這篇文章主要為大家詳細(xì)介紹了Android打造炫酷進(jìn)度條效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-10-10
  • Android Studio手動(dòng)配置Gradle的方法

    Android Studio手動(dòng)配置Gradle的方法

    Gradle:Gradle是一個(gè)基于Apache Ant和Apache Maven概念的項(xiàng)目自動(dòng)化建構(gòu)工具。它使用一種基于Groovy的特定領(lǐng)域語(yǔ)言(DSL)來(lái)聲明項(xiàng)目設(shè)置,拋棄了基于XML的各種繁瑣配置,本文給大家介紹Android Studio手動(dòng)配置Gradle的方法,一起看看吧
    2017-11-11
  • Android Eclipse 注釋模板的使用(圖文說(shuō)明)

    Android Eclipse 注釋模板的使用(圖文說(shuō)明)

    為提高代碼的可讀性以及后期的可維護(hù)性,為我們的代碼加上規(guī)范化的注釋是很有必要,不僅有利于提高自己的專業(yè)素養(yǎng),也能方便他人
    2013-12-12
  • Android View事件機(jī)制 21問(wèn)21答

    Android View事件機(jī)制 21問(wèn)21答

    這篇文章主要介紹了Android View事件機(jī)制 21問(wèn)21答 的相關(guān)資料,需要的朋友可以參考下
    2016-02-02
  • Android Studio 視頻播放失敗 start called in state1 異常怎么解決

    Android Studio 視頻播放失敗 start called in state1 異常怎么解決

    很多朋友問(wèn)小編在使用MediaPlayer播放音頻時(shí)報(bào)出 E/MediaPlayerNative: start called in state 1, mPlayer(0x0)問(wèn)題,該如何處理呢,今天小編給大家?guī)?lái)了Android Studio 視頻播放失敗 start called in state1 異常問(wèn)題,需要的朋友可以參考下
    2020-03-03
  • Android高仿2048小游戲?qū)崿F(xiàn)代碼

    Android高仿2048小游戲?qū)崿F(xiàn)代碼

    這篇文章主要介紹了Android高仿2048小游戲?qū)崿F(xiàn)代碼的相關(guān)資料,非常不錯(cuò)具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2016-10-10
  • Android AutoWrapTextView中英文排版問(wèn)題的解決方法

    Android AutoWrapTextView中英文排版問(wèn)題的解決方法

    這篇文章主要給大家介紹了關(guān)于Android AutoWrapTextView中英文排版問(wèn)題的解決方法,文中介紹的非常詳細(xì),對(duì)大家具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起看看吧。
    2017-05-05

最新評(píng)論