zoukankan      html  css  js  c++  java
  • Android 使用Spinner实现下拉列表

    课程目标
    1.了解Spinner下拉列表的使用和功能
    2.学会使用系统默认的Spinner
    3.学会使用自定义样式的Spinner

    执行步骤
    第一步:添加一个下拉列表项的list,这里添加的项就是下拉列表的菜单项
    private List<String> list = new ArrayList<String>();
    list.add("背景");
    list.add("上海");
    list.add("广州");
    list.add("深圳");
    第二步:为下拉列表定义一个数组适配器(ArrayAdapter),这里就用到了前面定义的list。
    adapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, list);
     ------> 定义适配器,添加数据源
    第三步:为适配器设置下拉列表下拉时的菜单样式。
    adapter.setDropDownResource(android.R.layout.simple_spinner_dropdown_item);
    第四步:将适配器添加到下拉列表上 --> Spinner加载适配器
    mySpinner.setAdapter(adapter);
    第五步:为下拉列表设置各种时间的响应,这个事件响应菜单被选中
    mySpinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener())
      --> 为Spiner设置监听器

    使用adapter.getItem(position)可以获得城市名(当然在这个程序中也可以通过list.get(position)获得城市名)。

    <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:orientation="vertical"
        >
    
        <TextView
            android:id="@+id/textView1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:textSize="25sp"
            android:textColor="#FF00FF"
            />
    
        <Spinner
            android:id="@+id/spinner1"
            android:layout_width="match_parent"
            android:layout_height="wrap_content" />
    
    </LinearLayout>
    activity_main.xml
    package com.example.spinner;
    
    import java.util.ArrayList;
    import java.util.List;
    
    import android.os.Bundle;
    import android.support.v7.app.ActionBarActivity;
    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 ActionBarActivity implements OnItemSelectedListener {
        
        private TextView textView;
        private Spinner spinner;
        private ArrayAdapter<String> arrayAdapter;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
            
            textView = (TextView) findViewById(R.id.textView1);
            textView.setText("您选择的城市是北京");
            spinner = (Spinner) findViewById(R.id.spinner1);
            List<String> list = new ArrayList<String>();
            for (String s : new String[] { "北京", "上海", "广州", "杭州" })
                list.add(s);
            arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, list);
            arrayAdapter.setDropDownViewResource(android.R.layout.simple_dropdown_item_1line);
            spinner.setAdapter(arrayAdapter);
            spinner.setOnItemSelectedListener(this);
        }
    
        @Override
        public void onItemSelected(AdapterView<?> parent, View view, int position,
                long id) {
            String cityName = arrayAdapter.getItem(position);
            textView.setText("您选择的城市是" + cityName);
        }
    
        @Override
        public void onNothingSelected(AdapterView<?> parent) {
            
        }
    }
    MainActivity.java

     效果:

  • 相关阅读:
    NOIP2012 借教室
    bzoj1816 扑克牌
    TYVJ1359 收入计划
    NOIP2015 跳石头
    易错点
    散列表
    数学模板
    12. 17 哈理工网络赛
    哈理工 网络赛
    三角形
  • 原文地址:https://www.cnblogs.com/moonlightpoet/p/5415114.html
Copyright © 2011-2022 走看看