今天 ,看的和学的都不多,就弄了一个spinner控件而已,下面就记录一下spinner 用法吧

基本上说,使用spinner 有三个步骤

一、在布局文件里面设置spinner 控件,这个不用再多说了;

二、创建一个adapt(适配器),用于存储里面的列表项,我个人觉得这个是使用spinner比较麻烦,比较难弄的地方,可能因为我是刚开始学android吧

我用的是列表adapt  这个属于动态列表框,以便后面可以随意添加项目

List<String> list=new ArrayList<String>();//声明List
        list.add("第一个");//这些是向List里面添加列表项目
        list.add("第二个");
        list.add("第三个");

//第一个参数,不用说了吧,代表上下文对象

//第二个参数,代表第个条目所使用的布局文件

//第三个参数,代表要将条目名称放在哪个控件上(TextView)因为R.layout.activity3中可能含有多个TextView控件

//第四个参数,即要填充的项目
        ArrayAdapter adapter=new ArrayAdapter(this,R.layout.activity3,R.id.thefirst,list);

以上方法可以动态的添加spinner里面的项目,也有静态的,即事先定义好了,不能再改了的,下面我将这种方法记录下来

首先,在strings.xml里面定义数组

<string-array name="diyige">
        <item>第一个</item>
        <item >第二个</item>
        <item >第三个</item>
        <item >第四个</item>
              </string-array>

然后设置arrayadapt

//第一个参数:上下文对象
        //第二个参数:引用strings.xml里面的字符串数组
        //第三个参数:用来指定spinner 样式 ,也可以使用自己的布局文件
        ArrayAdapter<CharSequence> adapter=ArrayAdapter.createFromResource(this,R.array.diyige, android.R.layout.simple_spinner_item);
        //设置spinner 里面的条目的样式,当然 同样的,也可以使用自己的而已文件
        adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

三、将spinner与adapt绑定(注  spinner要在前面事先定义好)

spinner.setAdapter(adapter);
        spinner.setPrompt("名称");

下面说下spinner 的主要触发事件吧

spinner 的触发事件主要是选 定某个项目时触 发的,直接 上代码,相信很容易弄明白 的

spinner.setOnItemSelectedListener(new OnItemSelectedListener() {

@Override

//long arg3  表示控件Id

//int arg2  表示控件的位置

//view arg1表示被选中的对象

//arg0 表示整个列表

public void onItemSelected(AdapterView<?> arg0, View arg1,      int arg2, long arg3) {

// TODO Auto-generated method stub

String select =arg0.getItemAtPosition(arg2).toString();   //获取条目名称

//这里写程序

}

@Override

public void onNothingSelected(AdapterView<?> arg0)

{     // TODO Auto-generated method stub

//如果 没有选 中时发生的事件

}   });

上面是直接写代码,也可以先创建个有OnItemSelectedListener()  监听器

再将监听器绑定到spinner

spinner.setOnItemSelectedListener(new 监听器名);

以 上,就是我今天 所学,因为是刚刚开始 学,所以有些地方说错了,或者 不到位,请网友多多见谅,也请指出,以便改正,互相学习!!!

三、spinner的更多相关文章

  1. 第三课 Spinner的使用

    Spinner的表现形式相当于C#的ComboBox,样子如下图: 但选择项的添加方式相当不一样,必须使用数据适配器,上例子. Layout--Main.axml <?xml version=& ...

  2. UI组件之AdapterView及其子类(三)Spinner控件具体解释

    Spinner提供了从一个数据集合中高速选择一项值的办法. 默认情况下Spinner显示的是当前选择的值.点击Spinner会弹出一个包括全部可选值的dropdown菜单或者一个dialog对话框,从 ...

  3. Android应用项目中BaseAdapter、SimpleAdapter和ArrayAdapter中的三种适配器

    一.写在前面: 本次我们来讲解一下Android应用中三个适配器:BaseAdapter.SimpleAdapter和ArrayAdapter.其中常见的是BaseAdapter,也是个人推荐使用的适 ...

  4. C#进阶系列——一步一步封装自己的HtmlHelper组件:BootstrapHelper(三:附源码)

    前言:之前的两篇封装了一些基础的表单组件,这篇继续来封装几个基于bootstrap的其他组件.和上篇不同的是,这篇的有几个组件需要某些js文件的支持. 本文原创地址:http://www.cnblog ...

  5. Spinner控件

    首先在XML文件中声明一个Spinner控件: <Spinner android:id="@+id/spinnerId" android:layout_width=" ...

  6. 转载java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.spinner/com.example.spinner.MainActivity}: java.lang.NullPointerException

    今天学习Android开发突然遇到了这个问题,查阅了很多资料,并且对集中原因进行了分析. 错误信息字符串:java.lang.RuntimeException: Unable to start act ...

  7. 三、jQuery--jQuery基础--jQuery基础课程--第10章 jQuery UI型插件

    1.拖曳插件——draggable 拖曳插件draggable的功能是拖动被绑定的元素,当这个jQuery UI插件与元素绑定后,可以通过调用draggable()方法,实现各种拖曳元素的效果,调用格 ...

  8. Spinner的简单学习

    代码分析: package com.mecury.spinnertest; import java.util.ArrayList; import android.support.v7.app.Acti ...

  9. android 之 spinner的简单使用

    先看spinner的效果图: 代码: MainActivity package com.mecury.spinnertest; import java.util.ArrayList; import a ...

随机推荐

  1. 1.4---字符串空格变成20%(CC150)

    import CtCILibrary.AssortedMethods; public class Question { // Assume string has sufficient free spa ...

  2. ubuntu14.04 server 安装vmware worktation 12

    0) Do the basic system installation of Ubuntu 14.04 LTS (Server or Desktop) 1) wget the installer wg ...

  3. ios Coredata 的 rollback undo 等事物处理函数

    首先说明 ios 中 NSManagedObjectContext 默认的 undoManager是nil的,就是说 undo 和 redo 都是没用的. 但是 rollback函数和reset函数是 ...

  4. 多线程同步_Monitor

    多线程一直在学习和理解中...... Monitor类是多线程中用以实现同步的一种技术,主要是同一进程内多线程间的同步技术. Monitor类中有以下几个方法需要注意: Monitor.Enter(o ...

  5. perform

    public class ArgsTest { private List <Object> args; private ArgsTestCheckPoint checkPoint; pub ...

  6. FFmpeg-20160418-snapshot-bin

    ESC 退出 0 进度条开关 1 屏幕原始大小 2 屏幕1/2大小 3 屏幕1/3大小 4 屏幕1/4大小 S 下一帧 [ -2秒 ] +2秒 ; -1秒 ' +1秒 下一个帧 -> -5秒 F ...

  7. 使用ssh正向连接、反向连接、做socks代理的方法

     ssh -L 219.143.16.157:58080:172.21.163.32:8080 用户名@localhost -p 10142  在 219.143.16.157机器执行   将ssh隧 ...

  8. Spring mvc 文件上传到文件夹(转载+心得)

    spring mvc(注解)上传文件的简单例子,这有几个需要注意的地方1.form的enctype=”multipart/form-data” 这个是上传文件必须的2.applicationConte ...

  9. 用Mybatis返回Map,List<Map>

    返回Map,Mybatis配置如下 : <select id="getCountyHashMap" resultType="java.util.HashMap&qu ...

  10. 【python】入门学习(十)

    #入门学习系列的内容均是在学习<Python编程入门(第3版)>时的学习笔记 统计一个文本文档的信息,并输出出现频率最高的10个单词 #text.py #保留的字符 keep = {'a' ...