Android——基本控件之下拉列表:Spinner(九)

这篇具有很好参考价值的文章主要介绍了Android——基本控件之下拉列表:Spinner(九)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1.知识点

(1)掌握下拉列表Spinner的使用;

(2)可以通过程序配置Spinner显示内容;

(3)可以通过配置文件配置Spinner显示内容。

2.具体内容

在html中,下拉列表使用<select> 这个标签完成,如果想要在此标签中添加下拉列表的内容的话,是要经<option>这个标签完成,那么在android中使用Spinner这个组件完成下拉列表的功能。

 文章来源地址https://www.toymoban.com/news/detail-641414.html

android 下拉列表,Android,开发语言,android

对于Spinner 这个组件来说,核心的地方就是在于下拉列表内容的设置上,所有讲解的内容就是在对于下拉列表内容设置上。

android 下拉列表,Android,开发语言,android

 在Spinner类中,setAdapter(SpinnerAdapter)方法就是设置下拉列表的选择内容,SpinnerAdapter就是一个适配器,会将所有的数据进行封装,封装之后通过此方法就可以放入到Spinner中。

android 下拉列表,Android,开发语言,android

 方式一:直接配置资源文件:

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="请选择编码格式:" />
    <Spinner 
        android:id="@+id/selectcode"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />

 对于Spinner来说,通过配置资源文件设置其下拉列表选项的话,需要在values下面的资源文件中定义一个xml。

<?xml version="1.0" encoding="utf-8"?>
<resources>
	<string-array name="code_info">
	    <item>utf-8</item>
	    <item>gbk</item>
	    <item>gb2312</item>
	    <item>uft-16</item>
	    <item>iso88591</item>
	</string-array>
</resources>

现在我们已经配置了一个资源文件,此时的问题就是要将资源文件设置到下拉列表的选项上去。可以直接在布局文件中设置。

  <Spinner 
        android:id="@+id/selectcode"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:entries="@array/code_info"—将资源文件中的内容设置到选项上
        />

 现在效果已经出来了,当然我们也可以设置一些下拉列表的提示信息。

<Spinner 
        android:id="@+id/selectcode"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:entries="@array/code_info"
        android:prompt="@string/promt_info"—配置提示信息
        />

以上就是通过配置资源文件的形式设置下拉列表选项的。

方式二:通过android.widget.ArrayAdapter类完成列表项设置

       ArrayAdapter类的功能:

              ·直接通过读取资源文件的定义的内容

              ·通过List集合设置列表项

范例一:通过读取资源文件的方式定义列表项

 

<string-array name="color_info">
	    <item>红色</item>
	    <item>蓝色</item>
	    <item>绿色</item>
	    <item>白色</item>
	    <item>黑色</item>
	</string-array>
<Spinner 
        android:id="@+id/selectcolor"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:prompt="@string/color_info"
        />

 现在对于我们的这个下拉列表就没有任何的列表信息,现在我们通过Activity程序进行配置,我们要知道ArrayAdapter类似于一个集合,只需要制定泛型。

android 下拉列表,Android,开发语言,android

 

public class SpinnerActivity extends Activity {
	private Spinner colorSpinner = null;
	 ArrayAdapter<CharSequence> adapter = null;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.spinner_activity);
        this.colorSpinner = (Spinner) super.findViewById(R.id.selectcolor);//取得组件
        this.colorSpinner.setPromptId(R.string.color_info);//设置提示信息
        //现在关键问题就是要装配一个SpinnerAdapter
        this.adapter = ArrayAdapter.createFromResource(this, R.array.color_, android.R.layout.simple_spinner_item);
        this.adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);//重新设置风格
        colorSpinner.setAdapter(this.adapter);//设置显示内容
    }
}

现在我们已经能够设置下拉列表的选项了,但是和第一种方式并没有太大的区别。

范例二:通过List集合完成配置。 

<Spinner 
        android:id="@+id/selectcity"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />
package com.example.spinnerproject;

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

import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.Spinner;

public class SpinnerActivity extends Activity {
	private Spinner colorSpinner = null;
	private Spinner citySpinner = null;
	 ArrayAdapter<CharSequence> adapterColor = null;
	 ArrayAdapter<CharSequence> adapterCity = null;
	 List<CharSequence> list = null;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.spinner_activity);
        this.colorSpinner = (Spinner) super.findViewById(R.id.selectcolor);//取得组件
        this.colorSpinner.setPromptId(R.string.color_info);//设置提示信息
        //现在关键问题就是要装配一个SpinnerAdapter
        this.adapterColor = ArrayAdapter.createFromResource(this, R.array.color_, android.R.layout.simple_spinner_item);
        this.adapterColor.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);//重新设置风格
        colorSpinner.setAdapter(this.adapterColor);//设置显示内容
        
        //以下是通过List集合完成下拉列表选项设置
        this.citySpinner = (Spinner) super.findViewById(R.id.selectcity);
        this.citySpinner.setPromptId(R.string.city_info);
        this.list = new ArrayList<CharSequence>();//实例化集合
        this.list.add("兰州");
        this.list.add("北京");
        this.list.add("上海");
        this.list.add("深圳");
        this.list.add("广州");
        this.adapterCity = new ArrayAdapter<CharSequence>(this,android.R.layout.simple_spinner_item,this.list);//装配适配器
        this.adapterCity.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);//重新设置风格
        this.citySpinner.setAdapter( this.adapterCity );//设置下拉选项
    }
}

 从以上的操作来看,下拉列表这个组件比我们之前学习的组件要稍微困难一些,大部分情况下,都是使用配置资源文件的形式设置下拉列表选项的。只有在特殊情况下才会使用到Activity程序进行配置。

3.小结

(1)使用Spinner可以完成下拉列表框的显示功能;

(2)下拉列表框的显示内容可以通过配置文件或程序进行填充。

 

到了这里,关于Android——基本控件之下拉列表:Spinner(九)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Android常用控件Spinner的使用(详解)

    在Android开发过程中,Spinner下拉控件是比较常用的控件,它可以以下拉框和dialog的方式进行展示。默认是下拉框方式。 上图可以看出实现Spinner的方式有两种:一、ArrayAdater 数组适配器 二、自定义适配器。 下面是bind的两个参数 String:在这里不一定是String,也可以是int ,flo

    2024年02月08日
    浏览(40)
  • Spinner(下拉列表)的使用

      目录 一、介绍: Spinner相关属性: 二、例子 例子一:(含适配器) 完整代码: 例子二(不含适配器): 完整代码:         安卓的Spinner是一个下拉菜单控件,通常用于选择一组选项中的一个。它可以为用户提供一种简单的交互方式,使其能够快速轻松地对应用程序中

    2024年02月06日
    浏览(36)
  • Android Studio开发之路(八)Spinner样式设置

    白色背景+显示下拉框按钮 问题: 设置Spinner的背景可以通过设置background: android:background=\\\"@color/white\\\" ,但是一旦设置了这个值,右侧的下拉按钮就会消失 在drawable中添加一个spinner_style.xml,并添加以下内容,然后在布局文件中的Spinner中添加Style 这里@drawable/ic_dropdown是一个下拉按

    2024年04月28日
    浏览(32)
  • Android -- 下拉列表、列表视图、网格视图

    Spinner 用于从一串列表中选择某项,功能类似于单选按钮的组合 下拉列表的展示 方式有两种,一种是在当前下拉框的正下方弹出列表框,此时要把spinnerMode属性设置为 dropdown,另一种是在页面中部弹出列表对话框,此时要把spinnerMode属性设置为dialog。 dropdown 下拉模式       

    2023年04月08日
    浏览(41)
  • Android点选下拉列表框选项,获取选项内容

    的作者做的一个项目,通过app来监测设备是否在线状态,这时就需要实现分别查询“在线”、“离线”、“全部”三种选项的设备情况。也就是要能实现根据在线与否的状态来对设备进行筛选。 要对数据表中数据进行筛选,经常用到下拉列表框来设定选项,当点选不同选项时

    2023年04月08日
    浏览(38)
  • 25. 【Android教程】列表控件 ListView

    在学习了 ScrollView 及 Adapter 两节内容之后,大家应该对 ListView 有了一些基本的了解,它是一个列表样式的 ViewGroup,将若干 item 按行排列。ListView 是一个很基本的控件也是 Android 中最重要的控件之一。它可以帮助我们完成多个 View 的垂直排列并支持滚动显示效果,而它比 Scr

    2024年04月17日
    浏览(42)
  • 循序渐进介绍基于CommunityToolkit.Mvvm 和HandyControl的WPF应用端开发(11) -- 下拉列表的数据绑定以及自定义系统字典列表控件

    在我们开发的前端项目中,往往为了方便,都需对一些控件进行自定义的处理,以便实现快速的数据绑定以及便捷的使用,本篇随笔介绍通过抽取常见字典列表,实现通用的字典类型绑定;以及通过自定义控件的属性处理,实现系统字典内容的快捷绑定的操作。 在我们创建下

    2024年02月08日
    浏览(57)
  • Android——基本控件(下)(二十)

    1.1 知识点 (1)掌握树型组件的定义; (2)可以使用事件对树操作进行监听。 2. 具体内容 既然这个组件可以完成列表的功能,肯定就需要一个可以操作的数据,那么这里也是使用setAdapter()这个方法完成数据的设置,可以大家可以发现,setAdapter方法中可以接受数据类型: 发

    2024年02月11日
    浏览(34)
  • Android——基本控件(下)(十九)

    1.1 知识点 (1)掌握Android中菜单的使用; (2)掌握选项菜单(OptionsMenu)的使用; (3)掌握上下文菜单(ContextMenu)的使用; (4)掌握子菜单(SubMenu)的使用; 1.2 具体内容      只需要在onCreateOptionsMenu(Menu menu)去进行菜单的设置就行 以上是在菜单显示之前执行的一个方

    2024年02月10日
    浏览(34)
  • 安卓控件 - 下拉列表

    1、创建安卓应用【SelectSubject】 2、将背景图片拷贝到drawable目录 3、主布局资源文件activity_main.[xml] 4、[字符串](资源文件strings.xml 5、启动应用,查看效果 通过下拉列表的entries属性绑定好了数据源,此时无须适配器也能看到下拉列表能展开列表项 6、主界面类 - MainActivity 声明

    2024年02月11日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包