Android 之 下拉框(Spinner)的简单使用



1. 工程的layout.xml文件如下:声明一个TextView控件和一个Spinner控件

  1. <?xml version="1.0" encoding="utf-8"?>      
  2. <LinearLayout      
  3.   xmlns:android="http://schemas.android.com/apk/res/android"      
  4.   android:layout_width="fill_parent"      
  5.   android:layout_height="fill_parent"      
  6.   android:orientation="vertical"      
  7.   >      
  8.   <TextView android:id="@+id/spinnerText"      
  9.             android:layout_width="fill_parent"        
  10.             android:layout_height="wrap_content"></TextView>      
  11.   <Spinner android:id="@+id/Spinner01"        
  12.            android:layout_width="fill_parent"      
  13.            android:layout_height="wrap_content"></Spinner>      
  14. </LinearLayout>     
 

 

 

2. 下拉选择项。这边使用xml,当然也可以使用其他的方式,比如ArrayAdapter、自定义Adapter等。

 

  1. <?xml version="1.0" encoding="utf-8"?>      
  2. <resources>      
  3.     <string-array name="plantes">      
  4.         <item>中国</item>      
  5.         <item>美国</item>      
  6.         <item>日本</item>      
  7.         <item>英国</item>      
  8.         <item>法国</item>      
  9.     </string-array>      
  10. </resources>      
 

 

3. 主类

  1. import android.app.Activity;       
  2. import android.os.Bundle;       
  3. import android.view.View;       
  4. import android.widget.AdapterView;       
  5. import android.widget.AdapterView.OnItemSelectedListener;       
  6. import android.widget.ArrayAdapter;       
  7. import android.widget.Spinner;       
  8. import android.widget.TextView;       
  9.       
  10. public class SpinnerActivity extends Activity {       
  11.            
  12.     private TextView view2;       
  13.     private Spinner spinner2;       
  14.     private ArrayAdapter adapter2;       
  15.       
  16.     @Override      
  17.     protected void onCreate(Bundle savedInstanceState) {       
  18.         // TODO Auto-generated method stub       
  19.         super.onCreate(savedInstanceState);       
  20.         setContentView(R.layout.spinner);       
  21.       
  22.         spinner2 = (Spinner) findViewById(R.id.spinner02);       
  23.         view2 = (TextView) findViewById(R.id.spinnerText02);       
  24.       
  25.         //将可选内容与ArrayAdapter连接起来       
  26.         adapter2 = ArrayAdapter.createFromResource(this, R.array.plantes, android.R.layout.simple_spinner_item);       
  27.       
  28.         //设置下拉列表的风格        
  29.     adapter2.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);       
  30.       
  31.         //将adapter2 添加到spinner中       
  32.         spinner2.setAdapter(adapter2);       
  33.       
  34.         //添加事件Spinner事件监听         
  35.         spinner2.setOnItemSelectedListener(new SpinnerXMLSelectedListener());       
  36.       
  37.         //设置默认值       
  38.         spinner2.setVisibility(View.VISIBLE);       
  39.                
  40.     }       
  41.            
  42.     //使用XML形式操作       
  43.     class SpinnerXMLSelectedListener implements OnItemSelectedListener{       
  44.         public void onItemSelected(AdapterView<?> arg0, View arg1, int arg2,       
  45.                 long arg3) {       
  46.             view2.setText("你来自:"+adapter2.getItem(arg2));       
  47.         }       
  48.       
  49.         public void onNothingSelected(AdapterView<?> arg0) {       
  50.                    
  51.         }       
  52.                
  53.     }       
  54. }      

 

setDropDownViewResource 主要是设置 User 点击 Spinner 后出现的下拉菜单样式, android 亦提供两种基本的样式:  
android.R.layout.simple_spinner_item : TextView 的下拉菜单。  
android.R.layout.simple_spinner_dropdown_item :除了有 TextView ,右边有 radio 的下拉菜单。  

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值