多个Spinner同时监听,判断是哪个Spinner做了回调

2024-02-03 15:32

本文主要是介绍多个Spinner同时监听,判断是哪个Spinner做了回调,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

首先有3个spinner控件,分别是性别、民族、学历 

为其添加适配器和数据源

//性别spinner和适配器
String[] sex = getResources().getStringArray(R.array.sexs);
ArrayAdapter<String> adapterSex = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,sex);
spActivityModifyPersonalSex.setAdapter(adapterSex);
spActivityModifyPersonalSex.setOnItemSelectedListener(this);
//民族spinner和适配器
String[] nation = getResources().getStringArray(R.array.nations);
ArrayAdapter<String> adapterNation = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,nation);
spActivityModifyPersonalNation.setAdapter(adapterNation);
spActivityModifyPersonalNation.setOnItemSelectedListener(this);
//学历spinner和适配器
String[] educations = getResources().getStringArray(R.array.educations);
ArrayAdapter<String> adapterEducation = new ArrayAdapter<String>(this,android.R.layout.simple_spinner_item,educations);
spActivityModifyPersonalEducations.setAdapter(adapterEducation);
spActivityModifyPersonalEducations.setOnItemSelectedListener(this);


接口回调中根据parent.getID();来判断是哪个Spinner控件的接口回调


@Override
public void onItemSelected(AdapterView<?> parent, View view, int position, long id) {Logger.t("activityModifyPersonal").d("id   "+id);
    Logger.t("activityModifyPersonal").d("view.getId()   "+view.getId());
    Logger.t("activityModifyPersonal").d("parent.getId()   "+parent.getId());
    Logger.t("activityModifyPersonal").d("R.id.sp_activity_modify_personal_sex  "+R.id.sp_activity_modify_personal_sex);
    Logger.t("activityModifyPersonal").d("R.id.sp_activity_modify_personal_Nation   "+R.id.sp_activity_modify_personal_Nation);
    Logger.t("activityModifyPersonal").d("R.id.sp_activity_modify_personal_educations   "+R.id.sp_activity_modify_personal_educations);

    switch (parent.getId()){case R.id.sp_activity_modify_personal_sex://性别
            sex = (String) parent.getSelectedItem();
            Logger.t("activityModifyPersonal").d("select性别"+sex);
            break;
        case R.id.sp_activity_modify_personal_Nation://民族
            nation = (String) parent.getSelectedItem();
            Logger.t("activityModifyPersonal").d("select民族"+nation);
            break;
        case R.id.sp_activity_modify_personal_educations://教育
            education = (String) parent.getSelectedItem();
            Logger.t("activityModifyPersonal").d("select教育"+education);
            break;
    }
}@Override
public void onNothingSelected(AdapterView<?> parent) {}

这篇关于多个Spinner同时监听,判断是哪个Spinner做了回调的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/674593

相关文章

Go语言使用select监听多个channel的示例详解

《Go语言使用select监听多个channel的示例详解》本文将聚焦Go并发中的一个强力工具,select,这篇文章将通过实际案例学习如何优雅地监听多个Channel,实现多任务处理、超时控制和非阻... 目录一、前言:为什么要使用select二、实战目标三、案例代码:监听两个任务结果和超时四、运行示例五

MySQL多实例管理如何在一台主机上运行多个mysql

《MySQL多实例管理如何在一台主机上运行多个mysql》文章详解了在Linux主机上通过二进制方式安装MySQL多实例的步骤,涵盖端口配置、数据目录准备、初始化与启动流程,以及排错方法,适用于构建读... 目录一、什么是mysql多实例二、二进制方式安装MySQL1.获取二进制代码包2.安装基础依赖3.清

C#监听txt文档获取新数据方式

《C#监听txt文档获取新数据方式》文章介绍通过监听txt文件获取最新数据,并实现开机自启动、禁用窗口关闭按钮、阻止Ctrl+C中断及防止程序退出等功能,代码整合于主函数中,供参考学习... 目录前言一、监听txt文档增加数据二、其他功能1. 设置开机自启动2. 禁止控制台窗口关闭按钮3. 阻止Ctrl +

JAVA中安装多个JDK的方法

《JAVA中安装多个JDK的方法》文章介绍了在Windows系统上安装多个JDK版本的方法,包括下载、安装路径修改、环境变量配置(JAVA_HOME和Path),并说明如何通过调整JAVA_HOME在... 首先去oracle官网下载好两个版本不同的jdk(需要登录Oracle账号,没有可以免费注册)下载完

Go语言中nil判断的注意事项(最新推荐)

《Go语言中nil判断的注意事项(最新推荐)》本文给大家介绍Go语言中nil判断的注意事项,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录1.接口变量的特殊行为2.nil的合法类型3.nil值的实用行为4.自定义类型与nil5.反射判断nil6.函数返回的

python判断文件是否存在常用的几种方式

《python判断文件是否存在常用的几种方式》在Python中我们在读写文件之前,首先要做的事情就是判断文件是否存在,否则很容易发生错误的情况,:本文主要介绍python判断文件是否存在常用的几种... 目录1. 使用 os.path.exists()2. 使用 os.path.isfile()3. 使用

使用jenv工具管理多个JDK版本的方法步骤

《使用jenv工具管理多个JDK版本的方法步骤》jenv是一个开源的Java环境管理工具,旨在帮助开发者在同一台机器上轻松管理和切换多个Java版本,:本文主要介绍使用jenv工具管理多个JD... 目录一、jenv到底是干啥的?二、jenv的核心功能(一)管理多个Java版本(二)支持插件扩展(三)环境隔

Go语言如何判断两张图片的相似度

《Go语言如何判断两张图片的相似度》这篇文章主要为大家详细介绍了Go语言如何中实现判断两张图片的相似度的两种方法,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 在介绍技术细节前,我们先来看看图片对比在哪些场景下可以用得到:图片去重:自动删除重复图片,为存储空间"瘦身"。想象你是一个

Python函数返回多个值的多种方法小结

《Python函数返回多个值的多种方法小结》在Python中,函数通常用于封装一段代码,使其可以重复调用,有时,我们希望一个函数能够返回多个值,Python提供了几种不同的方法来实现这一点,需要的朋友... 目录一、使用元组(Tuple):二、使用列表(list)三、使用字典(Dictionary)四、 使

Python如何判断字符串中是否包含特殊字符并替换

《Python如何判断字符串中是否包含特殊字符并替换》这篇文章主要为大家详细介绍了如何使用Python实现判断字符串中是否包含特殊字符并使用空字符串替换掉,文中的示例代码讲解详细,感兴趣的小伙伴可以了... 目录python判断字符串中是否包含特殊字符方法一:使用正则表达式方法二:手动检查特定字符Pytho