歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux編程 >> Linux編程 >> Android組件之Spinner(下拉列表)

Android組件之Spinner(下拉列表)

日期:2017/3/1 10:47:04   编辑:Linux編程

Spinner是一個列表選擇框,但其並不需要顯示下拉列表,二十相當於一個菜單供用戶選擇,下面用一個例子介紹:

在樣式文件中:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:Android="http://schemas.android.com/apk/res/android"
  3. android:layout_width="match_parent"
  4. android:layout_height="match_parent"
  5. android:orientation="vertical" >
  6. <TextView
  7. android:layout_width="fill_parent"
  8. android:layout_height="wrap_content"
  9. android:text="請選擇一項運動項目"
  10. />
  11. <Spinner
  12. android:id ="@+id/sportsSp"
  13. android:layout_width="match_parent"
  14. android:layout_height="wrap_content"
  15. android:prompt="@string/spinner_prompt"
  16. android:entries="@array/sports"
  17. />
  18. </LinearLayout>

在<Spinner>標簽中,通過android:prompt來設置彈出選擇框的標題,通過android:entries來設置默認的列表選項(定義在一個arrays.xml文件中)

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <resources>
  3. <string-array name="sports" >
  4. <item>足球</item>
  5. <item>籃球</item>
  6. <item>乒乓球</item>
  7. <item>網球</item>
  8. </string-array>
  9. </resources>
監聽列表點擊事件:
  1. package cn.class3g.activity;
  2. import android.app.Activity;
  3. import android.os.Bundle;
  4. import android.util.Log;
  5. import android.view.View;
  6. import android.widget.AdapterView;
  7. import android.widget.AdapterView.OnItemSelectedListener;
  8. import android.widget.Spinner;
  9. import android.widget.TextView;
  10. public class SpinnerDemo extends Activity implements OnItemSelectedListener{
  11. Spinner sportSp = null;
  12. protected void onCreate(Bundle savedInstanceState) {
  13. super.onCreate(savedInstanceState);
  14. setContentView(R.layout.spinner_layout);
  15. findViews();
  16. }
  17. private void findViews() {
  18. sportSp = (Spinner)this.findViewById(R.id.sportsSp);
  19. sportSp.setOnItemSelectedListener(this);
  20. sportSp.performClick();
  21. }
  22. //每選擇一次均以日志輸出形式打印
  23. public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,
  24. long arg3) {
  25. TextView tv = (TextView) arg1;
  26. Log.i("TAG", tv.getText().toString());
  27. }
  28. public void onNothingSelected(AdapterView<?> arg0) {
  29. }
  30. }
在模擬器中的效果與日志輸出結果:

Copyright © Linux教程網 All Rights Reserved