IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 移动开发 -> Android点选下拉列表框选项,获取选项内容 -> 正文阅读

[移动开发]Android点选下拉列表框选项,获取选项内容

的作者做的一个项目,通过app来监测设备是否在线状态,这时就需要实现分别查询“在线”、“离线”、“全部”三种选项的设备情况。也就是要能实现根据在线与否的状态来对设备进行筛选。

要对数据表中数据进行筛选,经常用到下拉列表框来设定选项,当点选不同选项时,根据选中内容进行筛选。要想完成此项目的,首先要做的就是,当点选下拉列表框中选项时,如何获得选项的内容?下边做一简单介绍。

一、下拉列表框选项字段数组设计

选项数组放在res/values/arrays.xml中,目录如图1所示,代码如码1所示,数组名称为“option”,有“在线”、“离线”、“全部”三个选项。

?图1 下拉列表框选项数组放置目录

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string-array name="option">
        <item>全部</item>
        <item>在线</item>
        <item>离线</item>
    </string-array>

</resources>

码1 下拉列表框选项数组代码

二、主界面设计

为了测试,当点选下拉列表框某个选项时,是否获得该选项的内容。在主界面上除了设计一个下拉列表框之外,还设计了一个textview,用来显示点选下拉列表框之后获得的内容。在android studio中,下拉列表框的名字是Spinner,如图2所示。

图2 下拉列表框名称

主界面设计如图3所示。

图3 主界面

layout代码如码2所示,注意Spinner的属性设置里,有一条语句:

android:entries="@array/option",

此句是把option数组与下拉列表框进行了关联,下拉列表框显示的内容即为数组内容。

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginTop="80dp"
        android:text="获取内容"
        app:layout_constraintHorizontal_bias="0.562"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

    <Spinner
        android:id="@+id/spinner"
        style="@style/Widget.AppCompat.Spinner.Underlined"
        android:layout_width="wrap_content"
        android:layout_height="50dp"
        android:layout_weight="0.6"
        android:entries="@array/option"
        tools:ignore="MissingConstraints"
        tools:layout_editor_absoluteX="61dp"
        tools:layout_editor_absoluteY="80dp">
    </Spinner>

</androidx.constraintlayout.widget.ConstraintLayout>

码2?layout代码

三、java代码

MainActivity.java代码如码3所示,其中

spinner.setOnItemSelectedListener

为下拉列表框点选选项时的监听。

MainActivity.this.getResources().getStringArray(R.array.option)[position]

为获取下拉列表框点选项对应的option数组内容。

package com.example.myspinner;

import androidx.appcompat.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.AdapterView;
import android.widget.Spinner;
import android.widget.TextView;


public class MainActivity extends AppCompatActivity {
TextView textView;
Spinner spinner;
String spinnercontext;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textView = (TextView) findViewById(R.id.text);
        spinner=(Spinner)findViewById(R.id.spinner);

        spinner.setOnItemSelectedListener(new Spinner.OnItemSelectedListener(){
            @Override
            public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {
                spinnercontext=MainActivity.this.getResources().getStringArray(R.array.option)[position];
                textView.setText(spinnercontext);
            }
            @Override
            public void onNothingSelected(AdapterView<?> parent) {
            }
        });
    }
}

码3?MainActivity.java代码

四、测试

测试结果如图4所示,当下拉列表框选中不同选项时,textview内容也会随之变化,说明用此方法可以获得下拉列表框选项的内容。

?图4 测试结果图

?

?

  移动开发 最新文章
Vue3装载axios和element-ui
android adb cmd
【xcode】Xcode常用快捷键与技巧
Android开发中的线程池使用
Java 和 Android 的 Base64
Android 测试文字编码格式
微信小程序支付
安卓权限记录
知乎之自动养号
【Android Jetpack】DataStore
上一篇文章      下一篇文章      查看所有文章
加:2022-05-10 12:02:43  更:2022-05-10 12:03:28 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/25 1:52:36-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码