亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

Android中如何使用Spinner實現一個列表選擇框

發布時間:2022-04-15 16:16:10 來源:億速云 閱讀:343 作者:iii 欄目:編程語言

這篇“Android中如何使用Spinner實現一個列表選擇框”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Android中如何使用Spinner實現一個列表選擇框”文章吧。

Android  Spinner列表選擇框的應用

Spinner 是 Android 的列表選擇框,不過 spinner 并不需要顯示下拉列表,而是相當于彈出一個菜單供用戶選擇。

Spinner 屬性:

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

Spinner 常用事件:

● AdapterView.OnItemCLickListener:列表項被點擊時觸發。
● AdapterView.OnItemLongClickListener:列表項被長按時觸發。
● AdapterView.OnItemSelectedListener:列表項被選擇時觸發。

Spinner 數據綁定:

● 使用xml設置數組資源,簡單方便但是不靈活,如果只是顯示固定的簡單數據可以使用。
● 使用 adapter 接口設置,最常見的方式,動態加載靈活,可以設置各種樣式和數據來源。

XML 文件結構(一般寫在string.xml文件中)

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

對于簡單的數據可以使用 ArrayAdapter 來設置適配器,但是對于稍微復雜的數據 ArrayAdapter 就無法滿足需求了,這時需要使用 SimpleAdapter 來做適配。

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

mSpinner = (Spinner)findViewById(R.id.sp_bank);
banklist = (List<String>) resultMap.get("list");
 
//將可選內容與ArrayAdapter連接起來
adapter = new ArrayAdapter<String>(self, R.layout.simple_spinner_item, banklist);
 
//設置下拉列表的風格
adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
 
//將adapter 添加到spinner中
mSpinner.setAdapter(adapter);
 
//添加事件Spinner事件監聽
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, "你點擊的是:"+str, 2000).show();
  bankname = str;
 }
 public void onNothingSelected(AdapterView<?> arg0) {
 }
}

Spinner 彈出列表事件上是 listview,所以 listview 的各種方法都可以用在 Spinner 彈出窗口這里,當時也可以自定義數據源,自定義 Adapter 繼承 BaseAdapter 實現更為靈活更為復雜的效果。

Spinner 在初始化時會自動調用一次 OnItemSelectedListener 事件,這是因為系統會自動加載默認值造成的。

解決方法:手動添加默認值,這里需要主要調用順序,必須在注冊方法之前調用。

//在事件注冊之前調用,一般指定第0個為默認值
spinner.setSelection(0, true);

以上就是關于“Android中如何使用Spinner實現一個列表選擇框”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

景洪市| 延安市| 南和县| 铜梁县| 滦平县| 木里| 孝义市| 镇原县| 元朗区| 合阳县| 涟源市| 梁山县| 台北市| 应用必备| 宁远县| 小金县| 红原县| 丹寨县| 容城县| 唐海县| 满城县| 呼伦贝尔市| 荆州市| 米林县| 珠海市| 嘉祥县| 辛集市| 萨嘎县| 凤山县| 奉贤区| 武安市| 灵台县| 宁国市| 延川县| 青田县| 姚安县| 邵武市| 田东县| 阿克陶县| 明溪县| 泾阳县|