`

Spinner的使用方法

阅读更多
通过对Spinner下拉列表控件的学习,大概总结步骤如下:
1、在layout目录下创建main.xml布局文件,用于Spinner下拉列表布局
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<Spinner
android:id="@+id/spinnerId"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
/>
</LinearLayout>
2、在layout目录下创建item.xml布局文件,这个布局文件主要是用于下拉列表显示内容:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView 
android:id="@+id/textViewId"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    />
</LinearLayout>

3、创建一个MainActivity继承Activity
package com.spinner;

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

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

public class MainActivity extends Activity {
//声明Spinner对象
private Spinner spinner = null;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//通过ID,得到Spinner对象
spinner = (Spinner) findViewById(R.id.spinnerId);
List<String> list = new ArrayList<String>();
list.add("test1");
list.add("test2");
//调用ArrayAdapter的构造函数来创建ArrayAdapter对象
//第一个参数是指上下文对象
//第二个参数指定了下拉菜单当中每一个条目的样式
//第三个参数指定了TextView控件的ID
//第四个参数为整个列表提供数据
ArrayAdapter adapter = new ArrayAdapter(this,R.layout.item,R.id.textViewId,list);
//通过createFromResource方法创建一个ArrayAdapter对象
//第一个参数是指上下文对象
//第二参数引用了在strings.xml文件当中定义的String数组
//第三个参数是用来指定Spinner的样式,是一个布局文件ID,该布局文件由Android系统提供,也可替换为自己定义的布局文件
/*ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromResource(
this, R.array.planets_array,
android.R.layout.simple_spinner_item);
*/ //设置Spinner当中每个条目的样式,同样是引用一个Android系统提供的布局文件
//adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);

spinner.setAdapter(adapter);
                   //设置下拉列表名称
spinner.setPrompt("测试");
//为spinner对象绑定监听器
spinner.setOnItemSelectedListener(new SpinnerOnSelectedListener());
}
//这个监听器主要用来监听用户选择列表的动作
class SpinnerOnSelectedListener implements OnItemSelectedListener{

//当用户选定了一个条目时,就会调用该方法
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int position,
long id) {
String selected = adapterView.getItemAtPosition(position).toString();
System.out.println(selected);
}

@Override
public void onNothingSelected(AdapterView<?> adapterView) {
System.out.println("nothingSelected");
}

}
}
分享到:
评论

相关推荐

    android spinner使用案例

    本篇文章将详细讲解如何在Android应用中使用Spinner,并结合具体的"android spinner使用案例"来深入理解其工作原理和用法。 ### 1. Spinner的基本概念 Spinner是Android SDK中的一个视图组件,属于`android.widget...

    Android列表选择框Spinner使用方法详解

    主要为大家详细介绍了Android列表选择框Spinner的使用方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    spinner使用2

    在本例"spinner使用2"中,我们将深入探讨Spinner的使用方法,以及如何在实际项目中有效地集成这个控件。 首先,Spinner的基本使用步骤包括以下几个方面: 1. **添加Spinner到布局文件**:在XML布局文件中,我们...

    Android Spinner控件简单使用方法

    除了基本的使用方式,Spinner还可以与数据库、网络数据等结合,通过CursorAdapter或者自定义Adapter进行数据绑定。此外,还可以自定义下拉列表的动画效果,通过修改spinner_popup属性实现。 总之,Android Spinner...

    MaterialSpinner 自定义Spinner

    4. 还可以通过Java或Kotlin代码来监听Spinner的选择事件,实现`OnItemSelectedListener`接口,重写`onItemSelected()`方法,以处理用户选择项后的逻辑。 5. 动画效果是MaterialSpinner的一大特色,其展开和关闭的...

    Spinner的基本使用

    本教程将深入探讨Spinner的基本使用方法,包括通过数组和XML数据源设置Spinner,以及不同样式的实现。 首先,我们从最基础的`Day04_Spinner01`开始。在这个示例中,我们将直接在Java代码中创建Spinner并设置其数据...

    vue-simple-spinner:适用于Vue.js的简单灵活的微调器

    vue-simple-spinner Vue.js的简单灵活的微调器vue-simple-spinner设计为轻巧的微调器,需要...ES6 以下示例也可以与CommonJS一起使用,方法是将ES6特定的语法替换为CommonJS等效项。 import Vue from 'vue'import Spinn

    android studio 的下拉菜单Spinner使用详解

    本文主要介绍了 Android Studio 中下拉菜单 Spinner 的使用详解,包括 Spinner 的相关属性、使用方法和示例程序,以及与 Gallery 组件的区别和用法。希望对大家的学习有所帮助,也希望大家多多支持我们。

    spinner下拉框使用详情

    - 如果在Fragment中使用Spinner,记得在`onCreateView()`或`onActivityCreated()`方法中初始化,而不是在`onCreate()`。 - 在处理点击事件时,注意`onItemSelected()`在首次加载时也会被调用,此时的position通常...

    ListView中Spinner的使用

    例如,可以在getView()方法中检查当前位置的值,并设置Spinner的选中状态: ```java @Override public View getView(int position, View convertView, ViewGroup parent) { View itemView = ...; // 初始化或复用...

    Android 之 Spinner用法介绍

    在Android开发中,Spinner是一个非常常用的控件,它提供了...了解并掌握Spinner的使用方法和自定义技巧,将有助于提升应用的用户体验和功能多样性。在实际开发中,根据具体需求灵活运用,可以使Spinner发挥更大的作用。

    android中spinner的使用

    在本教程中,我们将深入探讨如何在Android应用程序中有效地使用Spinner。 首先,我们需要在布局文件中添加Spinner。在XML布局文件中,使用`&lt;Spinner&gt;`标签来定义Spinner。例如: ```xml &lt;Spinner android:id="@+...

    extjs 的spinner方法实例

    在"extjs 的spinner方法实例"中,我们将探讨如何使用和自定义Spinner组件。 Spinner 控件在 ExtJS 中属于 `Ext.form.field.Spinner` 类,它继承自 `Ext.form.field.Number`,因此具备数字字段的所有功能,同时添加...

    Android Spinner 控件的使用

    下面我们将深入探讨如何在Android应用中使用Spinner,包括其基本用法、自定义适配器以及事件监听。 1. **基本使用** - **添加Spinner到布局**:首先,在XML布局文件中添加Spinner元素,通过`android:id`设置唯一...

    Android带设置默认值的Spinner

    - 当Spinner模式为`dropdown`时,可以使用`SpinnerAdapter`的`getDropDownView()`方法来自定义下拉列表的样式。 - 如果希望进一步自定义下拉列表的动画和行为,可以使用`Spinner`的`setOnItemSelectedListener()`...

    SpinnerTest使用自定义适配器

    本教程将深入探讨如何在SpinnerTest项目中使用自定义适配器,以实现更灵活的数据绑定和展示。适配器(Adapter)是Android系统中连接数据源和视图组件的关键桥梁,而BaseAdapter作为基础类,为我们提供了自定义适配器...

    Spinner控件使用的源码

    8. **适配器的类型安全**:尽管SpinnerAdapter是一个泛型接口,但实际使用时我们通常使用如ArrayAdapter或CursorAdapter,它们提供了更具体的类型安全性和便利性。 源码分析方面,我们可以看到Spinner在处理触摸...

    案例九(下拉选择spinner的使用

    在本案例中,我们将深入探讨Spinner的使用方法,包括如何创建、设置数据源、监听用户选择以及自定义样式。 首先,Spinner的创建通常在布局XML文件中完成。在`res/layout`目录下,打开或创建一个XML布局文件,添加...

    使用Spinner实现下拉列表

    在本教程中,我们将详细探讨如何使用Spinner来实现一个包含城市名字的下拉列表,并将选定的城市显示在TextView上。 1. **Spinner的基本结构** Spinner是由Adapter驱动的,Adapter是Android中连接数据源和视图的...

Global site tag (gtag.js) - Google Analytics