多个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

相关文章

判断PyTorch是GPU版还是CPU版的方法小结

《判断PyTorch是GPU版还是CPU版的方法小结》PyTorch作为当前最流行的深度学习框架之一,支持在CPU和GPU(NVIDIACUDA)上运行,所以对于深度学习开发者来说,正确识别PyTor... 目录前言为什么需要区分GPU和CPU版本?性能差异硬件要求如何检查PyTorch版本?方法1:使用命

Python如何精准判断某个进程是否在运行

《Python如何精准判断某个进程是否在运行》这篇文章主要为大家详细介绍了Python如何精准判断某个进程是否在运行,本文为大家整理了3种方法并进行了对比,有需要的小伙伴可以跟随小编一起学习一下... 目录一、为什么需要判断进程是否存在二、方法1:用psutil库(推荐)三、方法2:用os.system调用

Java中Switch Case多个条件处理方法举例

《Java中SwitchCase多个条件处理方法举例》Java中switch语句用于根据变量值执行不同代码块,适用于多个条件的处理,:本文主要介绍Java中SwitchCase多个条件处理的相... 目录前言基本语法处理多个条件示例1:合并相同代码的多个case示例2:通过字符串合并多个case进阶用法使用

Python实现特殊字符判断并去掉非字母和数字的特殊字符

《Python实现特殊字符判断并去掉非字母和数字的特殊字符》在Python中,可以通过多种方法来判断字符串中是否包含非字母、数字的特殊字符,并将这些特殊字符去掉,本文为大家整理了一些常用的,希望对大家... 目录1. 使用正则表达式判断字符串中是否包含特殊字符去掉字符串中的特殊字符2. 使用 str.isa

基于Java实现回调监听工具类

《基于Java实现回调监听工具类》这篇文章主要为大家详细介绍了如何基于Java实现一个回调监听工具类,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录监听接口类 Listenable实际用法打印结果首先,会用到 函数式接口 Consumer, 通过这个可以解耦回调方法,下面先写一个

Python中判断对象是否为空的方法

《Python中判断对象是否为空的方法》在Python开发中,判断对象是否为“空”是高频操作,但看似简单的需求却暗藏玄机,从None到空容器,从零值到自定义对象的“假值”状态,不同场景下的“空”需要精... 目录一、python中的“空”值体系二、精准判定方法对比三、常见误区解析四、进阶处理技巧五、性能优化

Java编译生成多个.class文件的原理和作用

《Java编译生成多个.class文件的原理和作用》作为一名经验丰富的开发者,在Java项目中执行编译后,可能会发现一个.java源文件有时会产生多个.class文件,从技术实现层面详细剖析这一现象... 目录一、内部类机制与.class文件生成成员内部类(常规内部类)局部内部类(方法内部类)匿名内部类二、

基于Flask框架添加多个AI模型的API并进行交互

《基于Flask框架添加多个AI模型的API并进行交互》:本文主要介绍如何基于Flask框架开发AI模型API管理系统,允许用户添加、删除不同AI模型的API密钥,感兴趣的可以了解下... 目录1. 概述2. 后端代码说明2.1 依赖库导入2.2 应用初始化2.3 API 存储字典2.4 路由函数2.5 应

Python实现合并与拆分多个PDF文档中的指定页

《Python实现合并与拆分多个PDF文档中的指定页》这篇文章主要为大家详细介绍了如何使用Python实现将多个PDF文档中的指定页合并生成新的PDF以及拆分PDF,感兴趣的小伙伴可以参考一下... 安装所需要的库pip install PyPDF2 -i https://pypi.tuna.tsingh

Flutter监听当前页面可见与隐藏状态的代码详解

《Flutter监听当前页面可见与隐藏状态的代码详解》文章介绍了如何在Flutter中使用路由观察者来监听应用进入前台或后台状态以及页面的显示和隐藏,并通过代码示例讲解的非常详细,需要的朋友可以参考下... flutter 可以监听 app 进入前台还是后台状态,也可以监听当http://www.cppcn