zoukankan      html  css  js  c++  java
  • android下拉菜单 spinner 学习

    首先看一下继承关系:

    public class

    Spinner

    extends AbsSpinner
    implements DialogInterface.OnClickListener

    Class Overview


    视图在同一时间只能显示一个子项,用户通过下拉的方式可以选择其中的一种项。该子项在 Spinner来自来Adpater 视图适配器。

    首先看一下效果图:


    Spinner 控件的使用

    一个简单的Spinner使用只需要下面几步:

    (1)新建一个工程

    (2)在布局文件中插入一下 Spinner 控件

    布局如下:

    <?xml version="1.0" encoding="utf-8"?>
    <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"
        tools:context="com.jcdh.jcli.spinner.MainActivity">
        <TextView
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:text="Where are you from"
            android:id="@+id/textView"
            android:textSize="30sp"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
            />
    
        <Spinner
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:id="@+id/planets_spinner"
            android:layout_alignParentTop="true"
            android:layout_alignParentLeft="true"
             />
    </LinearLayout>
    

    在资源Value/String定义一个数组:

    array defined in a stringresource file:

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string-array name="planets_array">
            <item>Mercury</item>
            <item>Venus</item>
            <item>Earth</item>
            <item>Mars</item>
            <item>Jupiter</item>
            <item>Saturn</item>
            <item>Uranus</item>
            <item>Neptune</item>
        </string-array>
    </resources>

    spinner 控件可以放在Activiy或Fragment中,通过Adapter得到数据源:

    Spinner spinner = (Spinner) findViewById(R.id.spinner);
    
     setOnItemSelectedListener(this) 

     // Create an ArrayAdapter using the string array and a default spinner layoutArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(this, R.array.planets_array, android.R.layout.simple_spinner_item);

     // Specify the layout to use when the list of choices appearsadapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

     // Apply the adapter to the spinnerspinner.setAdapter(adapter);

    
    例,Activity 处理监听:
    

    public class SpinnerActivity extends Activity implements OnItemSelectedListener {
        ...
        
        public void onItemSelected(AdapterView<?> parent, View view, 
                int pos, long id) {
            // An item was selected. You can retrieve the selected item using
            // parent.getItemAtPosition(pos)
        }
    
        public void onNothingSelected(AdapterView<?> parent) {
            // Another interface callback
        }
    }
    最后出效果:


    Demo 下载 http://download.csdn.net/detail/q610098308/9326759

  • 相关阅读:
    初学Cocos2dx
    炸弹人NABCD分析
    求二维整数数组中最大联通子数组的和
    大道之简读书笔记1
    求首位相连二维数组最大子矩阵的和
    求首位相连一维数组最大子数组的和
    求二维数组最大子数组的和
    程序员修炼之道读后感3
    电梯调度需求分析
    课堂作业第四周课上作业二
  • 原文地址:https://www.cnblogs.com/sharecenter/p/5621022.html
Copyright © 2011-2022 走看看