Android入门(14)——使用Spinner实现下拉列表

原创 2015年07月06日 22:36:19

 

1. 效果图:


 

2. 执行步骤:



3. 实现下拉列表:

ctrl+shift+F 整理代码格式。

在布局文件main.xml中:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/textView"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textColor="#ff0000"
        android:textSize="25sp" />

    <Spinner
        android:id="@+id/spinner"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />

</LinearLayout>
在MainActivity中:

package com.example.spinner;

import java.util.ArrayList;
import java.util.List;

import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Spinner;
import android.widget.TextView;
import android.widget.AdapterView.OnItemSelectedListener;

public class MainActivity extends Activity implements OnItemSelectedListener{

	private TextView textView;
	private Spinner spinner;
	private List<String> list;
	private ArrayAdapter<String> adapter;

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(R.layout.main);

		textView = (TextView) findViewById(R.id.textView);
		spinner = (Spinner) findViewById(R.id.spinner);
		textView.setText("您选择的城市是:北京");	// 这是初始化。
		/*
		 * 1.设置数据源。
		 */
		list = new ArrayList<String>();
		list.add("北京");
		list.add("广州");
		list.add("上海");
		list.add("山西");
		/*
		 * 2.新建数组适配器ArrayAdapter。(适用于单纯的文字),使用Android自带的样式,可以通过ctrl+左键来访问样式
		 */
		adapter = new ArrayAdapter<String>(this,
				android.R.layout.simple_spinner_item, list);
		/*
		 * 3.设置一个下拉列表的样式。使用Android自带的样式
		 */
		adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
		/*
		 * 4.加载适配器。
		 */
		spinner.setAdapter(adapter);
		/*
		 * 5. 给spinner设置监听器。
		 */
		spinner.setOnItemSelectedListener(this);
	}

	@Override
	public void onItemSelected(AdapterView<?> parent, View view, int position,
			long id) {
		// 
		String cityName = adapter.getItem(position);
		//String cityName = list.get(position);
		textView.setText("您选择的城市是:"+cityName);
	}

	@Override
	public void onNothingSelected(AdapterView<?> parent) {
		// TODO Auto-generated method stub
		
	}
}
效果图:


 


4. 自定义样式:

 




版权声明:本文为博主原创文章,未经博主允许不得转载。

Android——使用Spinner实现下拉列表

1.执行步骤: (1)确定数据源(添加一个下拉列表项的list) (2).定义适配器,添加数据源(为下拉列表定义一个数组适配器ArrayAdapter) ...
  • S415X
  • S415X
  • 2016年08月16日 22:37
  • 2464

使用PopupWindow实现Spinner的下拉列表

系统自带的Spinner实在不好用,所以我们用PopupWindow来实现同样的效果1、布局 ...
  • m0_37168878
  • m0_37168878
  • 2017年11月23日 14:21
  • 279

关于下拉列表的实现(spinner和PopupWindow+listview)

下拉菜单,个人感觉spinner使用起来不太好看,特别默认会显示第一行建议PopupWindow+listview来实现 1:用Spinner实现 spinner可以使用xml中数组最为资源或者使用代...
  • mengshirui_
  • mengshirui_
  • 2016年07月18日 16:16
  • 2327

Android:控件Spinner实现下拉列表

在Web开发中,HTML提供了下拉列表的实现,就是使用元素实现一个下拉列表,在其中每个下拉列表项使用表示即可。这是在Web开发中一个必不可少的交互性组件,而在Android中的对应实现就是Spinne...
  • u011630575
  • u011630575
  • 2015年12月10日 16:41
  • 668

具有多选功能的spinner自定义控件

概述当我们要做单选功能的时候,我们会很自然的想到Spinner,它可以在一个集合中选择一个我们需要的值。但是有时候我们需要在一个集合中选择多个值,这个时候Spinner就不能满足需求。此时可以根据自己...
  • yissan
  • yissan
  • 2015年10月26日 21:02
  • 4454

android自定义Spinner下拉菜单样式并获得选项的值

在Android中Spinner就是下拉菜单,它相当于HTML中的标签。 Android中提供的Spinner Widget下拉菜单已经非常好用了,样式也适用, 不过我们还是可以通过定义xml的方式来...
  • founder_chenhao
  • founder_chenhao
  • 2015年12月04日 10:57
  • 1753

下拉列表(Spinner),多选框(CheckBox),单选按钮(RadioButton)的使用

一个简单的功能测试,一个界面录入数据,一个界面xians
  • hubeilihao
  • hubeilihao
  • 2014年06月10日 22:36
  • 1330

android 如何使用spinner来实现选择省份和市区功能

在项目中开发时遇见市区选择,下面采用spinner来实现,为此做个记录; 1.布局activity_spinner.xml: xml version="1.0" encoding="u...
  • xiao_yuanjl
  • xiao_yuanjl
  • 2017年10月29日 17:18
  • 307

spinner实现下拉列表中选择项目

今天学习了Spinner组件,使用Spinner相当于从下拉列表中选择项目, 下面演示一下Spinner的使用使ArrayAdapter实现 使用ArrayAdapter进行适配数据: 1,...
  • zhangvalue
  • zhangvalue
  • 2015年10月29日 11:15
  • 953

android中Spinner(下拉框) 自定义样式 可改变 下拉选项的高度

一、改变高度      // 建立数据源         final String[] mItems = getResources().getStringArray(R.array.liushui...
  • liujunpen
  • liujunpen
  • 2014年12月12日 09:34
  • 5261
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Android入门(14)——使用Spinner实现下拉列表
举报原因:
原因补充:

(最多只允许输入30个字)