• Android中的下拉列表


    在Web开发中,HTML提供了下拉列表的实现,就是使用<select>元素实现一个下拉列表,在其中每个下拉列表项使用<option>表示即可。这是在Web开发中一个必不可少的交互性组件,而在Android中的对应实现就是Spinner。

    方法一:

    以资源方式,静态展示 Spinner 选项:

    <Spinner 
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/spinner2"
        android:entries="@array/spingarr"
        />

    数据文件:

    复制代码
    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string-array name="spingarr">
         <item>北京</item>  
        <item>上海</item>  
        <item>广州</item>  
        <item>深圳</item>  
        </string-array>
    </resources>
    复制代码

     

    用法 2 :

    以代码方式,动态展示 Spinner 选项,用适配器给Spinner添加数据

    复制代码
    package com.example.testspanner;
    
    import java.util.ArrayList;
    import java.util.List;
    
    import android.app.Activity;
    import android.os.Bundle;
    import android.widget.ArrayAdapter;
    import android.widget.Spinner;
    
    
    public class MainActivity extends Activity {
    private Spinner spinner;
    private List<String> data_list;
    private ArrayAdapter<String> arr_adapter;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.spinner);
            spinner = (Spinner) findViewById(R.id.spinner);
        
            //数据
            data_list = new ArrayList<String>();
            data_list.add("北京");
            data_list.add("上海");
            data_list.add("广州");
            data_list.add("深圳");
            
            //适配器
            arr_adapter= new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, data_list);
            //设置样式
            arr_adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
            //加载适配器
            spinner.setAdapter(arr_adapter);
    //获取值

    spinner.setOnItemSelectedListener(new OnItemSelectedListener() {

    @Override
    public void onItemSelected(AdapterView<?> arg0, View arg1,
    int arg2, long arg3) {
    Log.i("sssssssss", data_list.get(arg2));

    }

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

    }
    });

            
        }
    
    }
    复制代码

    布局文件增加:

    <Spinner 
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:id="@+id/spinner"
        />
     
    分类: Android
  • 相关阅读:
    css dropdown menu
    Understanding Delegated JavaScript Events
    AngularJS-Learning ui-router angular-transitions
    javascript sorting/ v8 sorting
    Sublime Text 3 新手上路:必要的安裝、設定與基本使用教學
    express with bower in websotrm
    angularjs transitions
    create a nodejs npm package
    nodejs module/require
    stylus , another css processor
  • 原文地址:https://www.cnblogs.com/changyiqiang/p/7219567.html
Copyright © 2020-2023  润新知