zoukankan      html  css  js  c++  java
  • 下拉列表 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>
  • 相关阅读:
    ES ElasticSearch 7.x 下动态扩大索引的shard数量
    Java框架Spring Boot & 服务治理框架Dubbo & 应用容器引擎Docker 实现微服务发布
    谈一下Docker与Kubernetes集群的日志和日志管理-转载
    Elasticsearch优化 & filebeat配置文件优化 & logstash格式配置 & grok实践
    Nginx错误日志(error_log)配置及信息详解
    赵总的运维体系专栏学习的总结
    APP或者前端通过识别用户代理详细信息和浏览器数据进行安全防御
    Kubernetes使用Eedpoints连接外部服务端口
    CDN域名解析问题
    Istio 实践 之 Circuit breakers 断路器 (请求熔断)
  • 原文地址:https://www.cnblogs.com/zziss/p/2290367.html
Copyright © 2011-2022 走看看