【下拉列表】spinner的使用

    xiaoxiao2026-04-05  4

    spinner监听器: OnItemSelectedListener 系统自带下拉列表样式: android.R.layout.simple_spinner_dropdown_item

    适配器的选择: 当视图中用到图片时,使用SimpleAdapter——图文并茂 普通的文字什么的,使用ArrayAdapter

    Spinner 实现下拉列表:

    //1.设置数据源 List<String> List<Map< String,Object>> //2.新建适配器 ArrayAdapter<String> SimpleAdapter //3.adapter设置一个下拉列表样式 adapter.setDropDownViewResource(resourse); //4.spinner加载适配器 spinner.setAdapter(adapter); //5.为spinner设定监听器 spinner.setOnItemSelectedListener(new spinner.OnItemSelectedListener(){@Override @Override });

    源代码:

    package com.example.spinner; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.os.Bundle; import android.view.View; import android.widget.AdapterView; import android.widget.AdapterView.OnItemSelectedListener; import android.widget.ArrayAdapter; import android.widget.Spinner; import android.widget.TextView; public class MainActivity extends Activity implements OnItemSelectedListener { private TextView textView; private Spinner spinner; private List<String> list; private ArrayAdapter<String> adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); textView = (TextView) findViewById(R.id.text); spinner = (Spinner) findViewById(R.id.spinner); textView.setText("您选择的城市是北京"); // 1.设置数据源 list = new ArrayList<String>(); list.add("北京"); list.add("上海"); list.add("广州"); list.add("深圳"); // 2.新建ArrayAdapter适配器(上下文,布局文件,数据源) adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, list); // 3.adapter设置下拉菜单列表的样式 adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); // 4.spinner加载适配器 spinner.setAdapter(adapter); // 5.给spinner设置监听器 spinner.setOnItemSelectedListener(this); } @Override public void onItemSelected(AdapterView<?> parent, View view, int position, long arg3) { // TODO Auto-generated method stub String cityName = adapter.getItem(position); // 这个方法也可以String cityName = list.get(position); textView.setText("您选择的城市是" + cityName); } @Override public void onNothingSelected(AdapterView<?> arg0) { // TODO Auto-generated method stub } }

    XML

    <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" > <TextView android:id="@+id/text" android:layout_width="match_parent" android:layout_height="wrap_content" android:textColor="#ff0000" android:textSize="25dp" /> <Spinner android:id="@+id/spinner" android:layout_width="match_parent" android:layout_height="wrap_content" /> </LinearLayout>
    转载请注明原文地址: https://ju.6miu.com/read-1308531.html
    最新回复(0)