文档章节

Spinner的使用

c
 chuiyuan
发布于 2014/05/06 20:53
字数 304
阅读 115
收藏 0

一 。使用Adapter的步骤

(1)获得 Spinner 对象 

(2)创建 Adapter  --------->新建Adapter 对象 

                               --------->设置下拉视图的资源 

(3)为Spinner 设置 Adapter

(4)为Spinner 设置监听器

具体

创建Adapter用:

(1)  新建Adapter 

ArrayAdapter.ArrayAdapter( Context context , int TextViewResourceId , List <String > objects );

Context: 表明这个Adpater 属于那个Activity。

第二个参数可以自己定义 。

objects :向下拉表中添加的数据 。

(2)  为Adpater 设置下拉视图的资源 

也就是点击spinner  后下拉 的视图。

ArrayAdapter.setDropDownViewResource( int resource );

可以自己定义。


例子:

protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.activity_main);
		
		spinner = (Spinner)findViewById(R.id.spinner);
		tv =(TextView)findViewById(R.id.textView2);
		
		adapter = new ArrayAdapter(this ,
				android.R.layout.simple_spinner_item, years );    //新建 Adapter 
		adapter.setDropDownViewResource(R.layout.list);              //设置下拉资源
		
		spinner.setAdapter(adapter);                     //为spinner设置 adapter 
	
		spinner.setOnItemSelectedListener(new OnItemSelectedListener(){
			public void onItemSelected(AdapterView<?> parent, View view,
					int position, long id) {
				String selected = years[position];
				tv.append("\n"+selected);
				
			}
			public void onNothingSelected(AdapterView<?> parent) {
				// TODO Auto-generated method stub
			}	
		});
	}

里面的  R.layout.list 为

<TextView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/list"
    android:layout_width="wrap_content"
    android:layout_height="40sp"
    android:text="TextView"
    android:textAppearance="?android:attr/textAppearanceLarge" />

也就是下拉 后的视图。

目前还不能区分list 和第二个参数的区别。


二。如果想改成可以添加下拉项目的

array = new ArrayList <String>();
		
		for (int i=0;i<years.length;i++){
			array.add(years[i]);
		}
		adapter = new ArrayAdapter(this ,
				android.R.layout.simple_spinner_item, array );

还有

String selected = array.get(position);


© 著作权归作者所有

共有 人打赏支持
c
粉丝 9
博文 92
码字总数 40993
作品 0
海淀
Android学习笔记(十二):Activity-Spinner

例子一:Spinner的基本实现方法 步骤一:编写Android XML文件

鉴客
2011/12/01
1K
0
Android-spinner详解

Spinner控件也是一种列表类型的控件,它的继承关系如下: java.lang.Object ↳ android.view.View ↳ android.view.ViewGroup ↳ android.widget.AdapterView ↳ android.widget.AbsSpinner ......

鉴客
2011/12/01
7.1K
0
Android 用户界面---用AdapterView绑定数据(Binding to Data with AdapterView)

AdapterView是ViewGroup的一个子类,它的子View是由绑定某些类型数据的Adapter类决定的。AdapterView有助于在需要的时候,在布局中显示被存储的数据(相对与资源字符串或可描画资源)。 Gall...

长平狐
2012/10/16
194
0
Android开发之道(9)RadioBox、CheckBox和Spinner

转载请注明本文来自“柳大的CSDN博客”:http://blog.csdn.net/Poechant 1、RadioBox与RadioGroup 在《Android开发之道(5)Widget、Activity与Intent》一文中已经初步接触到了 RadioBox 的使...

晨曦之光
2012/04/24
271
0
android自定义spinner,使用AppCompatTextView+PopupWindow 实现下拉选择的功能

自定义spinner 自定义spinner,使用AppCompatTextView+PopupWindow 实现下拉选择的功能,代码简单,几个类 感谢 https://github.com/arcadefire/nice-spinner,本项目是对其的优化与扩展 1、...

陶海理
01/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Kafka技术资料总结(不断更新中)

1、Kafka实践:到底该不该把不同类型的消息放在同一个主题中 2、Kafka剖析系列: Kafka剖析(一):Kafka背景及架构介绍 Kafka设计解析(二):Kafka High Availability (上)...

九州暮云
34分钟前
1
0
面向对象设计原则(OOP)

单一职责原则(Single responsibility principle)又称单一功能原则。它规定一个类应该只有一个发生变化的原因。 核心原则:低耦合,高内聚。 一个类,应该只有一个引起它变化的原因,也就是...

gackey
今天
4
0
C++ 锁

C++提供了两种常用的锁,std::lock_guard<Lockable &T>和std::unique_lock<Lockable &T>。通常使用场景下,这两个锁用法一致。即,在构造锁对象时上锁,在析构锁对象时解锁。使用户从上锁/解...

yepanl
今天
4
0
Kali Linux Docker 練習

docker pull kalilinux/kali-linux-docker docker run -t -i kalilinux/kali-linux-docker /bin/bash apt-get update apt-get install htop apt-get install nmap apt-get install wpscan ap......

BaiyuanLab
今天
4
0
通俗大白话来理解TCP协议的三次握手和四次分手

最近在恶补计算机网络方面的知识,之前对于TCP的三次握手和四次分手也是模模糊糊,对于其中的细节更是浑然不知,最近看了很多这方面的知识,也在系统的学习计算机网络,加深自己的CS功底,就...

onedotdot
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部