這篇文章主要介紹Android UI控件之Spinner下拉列表效果怎么實現(xiàn),文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!
創(chuàng)新互聯(lián)企業(yè)建站,十余年網(wǎng)站建設(shè)經(jīng)驗,專注于網(wǎng)站建設(shè)技術(shù),精于網(wǎng)頁設(shè)計,有多年建站和網(wǎng)站代運營經(jīng)驗,設(shè)計師為客戶打造網(wǎng)絡(luò)企業(yè)風(fēng)格,提供周到的建站售前咨詢和貼心的售后服務(wù)。對于做網(wǎng)站、網(wǎng)站制作中不同領(lǐng)域進(jìn)行深入了解和探索,創(chuàng)新互聯(lián)在網(wǎng)站建設(shè)中充分了解客戶行業(yè)的需求,以靈動的思維在網(wǎng)頁中充分展現(xiàn),通過對客戶行業(yè)精準(zhǔn)市場調(diào)研,為客戶提供的解決方案。下拉列表---Spinner用于顯示列表項,類似于一組單選按鈕RadioButton。Spinner的使用,可以極大的提升用戶的體驗性。當(dāng)需要用戶選擇的時候,可以提供一個下拉列表項給用戶選擇。
具體來說下拉列表是如何實現(xiàn)的呢?
通過查閱API知道Spinner繼承AdapterView,因此它的數(shù)據(jù)源需要通過Adapter實現(xiàn)。
一般來說Spinner的數(shù)據(jù)源可以是數(shù)組,也可以是一個XML文件。
一、以數(shù)組作為數(shù)據(jù)源
這種實現(xiàn)方式比較簡單,先上效果圖:
xml文件代碼;
MainActivity文件代碼:
package com.kiritor.ui_spinner; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Spinner; import android.widget.TextView; public class MainActivity extends Activity { private TextView result = null; private Spinner spinner = null; private ArrayAdapteradapter = null; private static final String [] langurage ={"機(jī)器語言","匯編","c語言","c++語言","java語言"}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); result = (TextView)findViewById(R.id.result); spinner = (Spinner)findViewById(R.id.spinner); adapter = new ArrayAdapter (this,android.R.layout.simple_spinner_item,langurage); //設(shè)置下拉列表風(fēng)格 adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); //將適配器添加到spinner中去 spinner.setAdapter(adapter); spinner.setVisibility(View.VISIBLE);//設(shè)置默認(rèn)顯示 spinner.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView> arg0, View arg1, int arg2, long arg3) { // TODO Auto-generated method stub result.setText("你的選擇是:"+((TextView)arg1).getText()); } @Override public void onNothingSelected(AdapterView> arg0) { // TODO Auto-generated method stub } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
二、以xml文件作為數(shù)據(jù)源
先上效果圖吧:
數(shù)據(jù)源xml文件:
- 機(jī)器語言
- 匯編語言
- c語言
- c++語言
- java語言
- Android學(xué)習(xí)
xml文件:
MainActivity
package com.kiritor.ui_spinner; import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.View; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.AdapterView; import android.widget.ArrayAdapter; import android.widget.Spinner; import android.widget.TextView; public class MainActivity extends Activity { private TextView result = null; private Spinner spinner = null; private ArrayAdapteradapter = null; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); result = (TextView)findViewById(R.id.result); spinner = (Spinner)findViewById(R.id.spinner); adapter = ArrayAdapter.createFromResource(this,R.array.langurage,android.R.layout.simple_spinner_item); //設(shè)置下拉列表風(fēng)格 adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); //將適配器添加到spinner中去 spinner.setAdapter(adapter); spinner.setVisibility(View.VISIBLE); spinner.setOnItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView> arg0, View arg1, int arg2, long arg3) { // TODO Auto-generated method stub result.setText("你的選擇是:"+((TextView)arg1).getText()); } @Override public void onNothingSelected(AdapterView> arg0) { // TODO Auto-generated method stub } }); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } }
以上是“Android UI控件之Spinner下拉列表效果怎么實現(xiàn)”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!