三、spinner
今天 ,看的和学的都不多,就弄了一个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的更多相关文章
- 第三课 Spinner的使用
Spinner的表现形式相当于C#的ComboBox,样子如下图: 但选择项的添加方式相当不一样,必须使用数据适配器,上例子. Layout--Main.axml <?xml version=& ...
- UI组件之AdapterView及其子类(三)Spinner控件具体解释
Spinner提供了从一个数据集合中高速选择一项值的办法. 默认情况下Spinner显示的是当前选择的值.点击Spinner会弹出一个包括全部可选值的dropdown菜单或者一个dialog对话框,从 ...
- Android应用项目中BaseAdapter、SimpleAdapter和ArrayAdapter中的三种适配器
一.写在前面: 本次我们来讲解一下Android应用中三个适配器:BaseAdapter.SimpleAdapter和ArrayAdapter.其中常见的是BaseAdapter,也是个人推荐使用的适 ...
- C#进阶系列——一步一步封装自己的HtmlHelper组件:BootstrapHelper(三:附源码)
前言:之前的两篇封装了一些基础的表单组件,这篇继续来封装几个基于bootstrap的其他组件.和上篇不同的是,这篇的有几个组件需要某些js文件的支持. 本文原创地址:http://www.cnblog ...
- Spinner控件
首先在XML文件中声明一个Spinner控件: <Spinner android:id="@+id/spinnerId" android:layout_width=" ...
- 转载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 ...
- 三、jQuery--jQuery基础--jQuery基础课程--第10章 jQuery UI型插件
1.拖曳插件——draggable 拖曳插件draggable的功能是拖动被绑定的元素,当这个jQuery UI插件与元素绑定后,可以通过调用draggable()方法,实现各种拖曳元素的效果,调用格 ...
- Spinner的简单学习
代码分析: package com.mecury.spinnertest; import java.util.ArrayList; import android.support.v7.app.Acti ...
- android 之 spinner的简单使用
先看spinner的效果图: 代码: MainActivity package com.mecury.spinnertest; import java.util.ArrayList; import a ...
随机推荐
- C语言宏定义时#(井号)和##(双井号)的用法1
#在英语里面叫做 pound 在C语言的宏定义中,一个#表示字符串化:两个#代表concatenate 举例如下: #include <iostream> void quit_comman ...
- POCO浅探
POCO作用类似于POJO.POJO的内在含义是指那些从来没有任何类继承.也没有实现任何接口,更是没有被其他框架侵入的JAVA对象.POCO的含义与此是一致的.POJO的意义就在于它的简单灵活性,能够 ...
- OracleBulkCopy
Oracle也有BulkCopy了,需要安装oracle 11g,并引用客户端下面的Oracle.DataAccess.dll 用法和SQLBulkCopy差不多 connStr 是 ORACLE 的 ...
- iOS coredata 数据库升级 时报Can't find model for source store
在coredata 数据库结构被更改后,没根据要求立即建立新version,而是在原version上进行了小修改,之后才想起来建立新版本.并通过以下代码合并数据库, NSError *error = ...
- win8开发wpf程序遇到的无语问题
在设置wpf程序全屏后,点击某个listbox列表,发现程序下面出现了任务栏. 查找解决答案未果.仔细一想可能是win8系统的问题. 最后试着把listbox的滚动条去掉了,问题解决. 原因:当程序中 ...
- DataStage
parallel job shell调用:dsjob ./dsjob -run -mode NORMAL -paramfile xxx.param <PROJECT> <JOB> ...
- 【Excel 4.0 函数】REGISTER 的两种形式以及VBA等效语句
形式1 REGISTER("SAMPLE.DLL", "MyFunction", "AIC") 形式1等效 VBA语句 Declare Fu ...
- increadbuild重装
客户端和服务端都重装,可能需要去任务管理其中停止相关的服务,重装之前要去注册表中删除旧的注册表项.一般情况下incredibuild对应的位置是:64位系统HKEY_CLASSES_ROOT\\Wow ...
- Mysql复制之路由
在主从复制读写分离的思路下,要想使所有写都到MasterServer,所有读都路由到Slave Server;就需要使用一些路由策略. 可以使用MysqlProxy[Mysql代理],据说MysqlP ...
- Lua程序设计入门
在Lua中,一切都是变量,除了关键字.TTMD强大了. 1.注释 -- 表示注释一行 --[[ ]]表示注释一段代码,相当于C语言的/*....*/ 注意:[[ ... ]]表示一段字符串 2.lua ...