Spinner

下拉列表 spinner(android)

下拉列表 spinner,这个使用很简单,在 xml 中定义一个标签,然后指定 ArrayAdapter<String> 就可以了,

Adapter 需要指定下拉的布局。关于下拉的数据,书中是写用静态数组,我这里改成了从资源文件中读取

java 代码

package zziss.android.spinnerTest;

import java.util.Map;

import android.app.Activity;
import android.content.res.Resources;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.TextView;

public  class SpinnerTestActivity  extends Activity {
     /**  Called when the activity is first created.  */
    
     private TextView iTv;
     private Spinner  iSpinner;
     private String[] items;
     private ArrayAdapter<Map<String,Integer>> iAda;
    @Override
     public  void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        iTv = (TextView) this.findViewById(R.id.tv);
        iSpinner = (Spinner) this.findViewById(R.id.spinner);
        Resources res = getResources();
        items = res.getStringArray(R.array.listItems);
        ArrayAdapter<String> ada =  new ArrayAdapter<String>( this,
                android.R.layout.simple_spinner_item,items);
        ada.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
        
        iSpinner.setAdapter(ada);
        iSpinner.setOnItemSelectedListener( new Spinner.OnItemSelectedListener()
        {

            @Override
             public  void onItemSelected(AdapterView<?> arg0, View arg1,
                     int arg2,  long arg3) {
                 //  TODO Auto-generated method stub
                iTv.setText(items[arg2]);
            }

            

            @Override
             public  void onNothingSelected(AdapterView<?> arg0) {
                 //  TODO Auto-generated method stub
                
            }
            
        });
    }
}

main.xml

<? xml version="1.0" encoding="utf-8" ?>
< LinearLayout  xmlns:android ="http://schemas.android.com/apk/res/android"
    android:layout_width
="fill_parent"
    android:layout_height
="fill_parent"
    android:orientation
="vertical"   >

     < TextView
        
android:id ="@+id/tv"
        android:layout_width
="fill_parent"
        android:layout_height
="wrap_content"
        android:text
=""   />
     < Spinner 
        
android:id ="@+id/spinner"
        android:layout_width
="wrap_content"
        android:layout_height
="wrap_content"
        android:layout_centerHorizontal
="true"
        
/>
</ LinearLayout >

 

string.xml

<? xml version="1.0" encoding="utf-8" ?>
< resources >

     < string  name ="hello" >Hello World, SpinnerTestActivity! </ string >
     < string  name ="app_name" >SpinnerTest </ string >
     < string-array  name ="listItems"   >
         < item  >A型 </ item >
         < item  >B型 </ item >
         < item  >AB型 </ item >
         < item  >O型 </ item >
     </ string-array >

</ resources >
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值