处理多个事件侦听器的最佳方法

埃拉·戈里拉基(ElaGorilaki)

假设我有一个微调器(包含2个项目)和一个单选按钮组(具有2个单选按钮)。

例如,我想在我的布局中显示一个TextView,每个选择都将具有不同的值:

例如,我们有:

微调器


无线电集团

真假

因此,我们有4种情况:

  1. 男性真实
  2. 女假
  3. 男性错误
  4. 女真

简而言之,每次用户选择这些选项中的任何一个,我都希望显示一个不同的textview。我将事件侦听器放置在微调器和单选按钮上:

微调监听器

spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
        @Override
        public void onItemSelected(AdapterView<?> parent, View arg1,
                int arg2, long arg3) {
            ``// TODO Auto-generated method stub
        }

广播组侦听器

radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
            @Override
            public void onCheckedChanged(RadioGroup group, int checkedId) {
                // TODO Auto-generated method stub
                          //switch checkedId and check which spinner item is selected...
                          //then show the textview
                     }

但这有时有时行不通-我遇到了许多不同的问题。我也尝试过类似的选择。但是,没有任何东西能正常工作。

如何在添加额外按钮的情况下动态处理此问题

拉里·麦肯齐(Larry McKenzie)

希望这可以更好地解释我的评论。

int selectedSpinnerItem = -1;
int selectedRadioGroupItem = -1;

spinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
    @Override
    public void onItemSelected(AdapterView<?> parent, View v, int position, long id) {
        selectedSpinnerItem = position;
        updateViews();
    }

    @Override
    public void onNothingSelected(AdapterView<?> parent) {
        selectedSpinnerItem = -1;
        updateViews();
    }
});

radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
    @Override
    public void onCheckedChanged(RadioGroup group, int checkedId) {
        selectedRadioGroupItem = checkedId;
        updateViews();
    }
});

public void updateViews(){
    // Here is where you will compare the values 
    // and display the appropriate views.
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在全局事件上处理多个侦听器

来自分类Dev

事件侦听器的最佳设计模式

来自分类Dev

JavaFX事件/侦听器/处理程序

来自分类Dev

处理大量事件侦听器?

来自分类Dev

onsubmit方法与提交事件侦听器

来自分类Dev

了解不同的事件侦听器方法

来自分类Dev

将事件侦听器附加到整个html文档的最佳方法

来自分类Dev

删除元素上的事件侦听器的最佳方法是什么?

来自分类Dev

在socket.io上添加事件侦听器以节省资源的最佳方法

来自分类Dev

什么是实现长时间运行的事件侦听器的最佳方法

来自分类Dev

在循环内添加事件侦听器并获取元素标签的最佳方法

来自分类Dev

使用单个事件侦听器而不是多个事件侦听器

来自分类Dev

在何处添加事件侦听器的最佳实践

来自分类Dev

最佳实践的确认:删除事件侦听器

来自分类Dev

Web应用程序的事件侦听器最佳实践

来自分类Dev

最佳实践的确认:删除事件侦听器

来自分类Dev

jQuery DataTables的on()事件侦听器,具有多个事件

来自分类Dev

AngularJS:处理任何事件的通用侦听器

来自分类Dev

Laravel事件处理程序和侦听器

来自分类Dev

处理Kotlin中事件总线的通用侦听器

来自分类Dev

Laravel事件处理程序和侦听器

来自分类Dev

React:与事件侦听器相关的批处理状态更新

来自分类Dev

Hashchange事件侦听器在将事件处理程序附加到事件之前进行侦听

来自分类Dev

多个子元素的单个事件侦听器

来自分类Dev

使用循环创建多个事件侦听器

来自分类Dev

多个单选按钮组的事件侦听器

来自分类Dev

for循环中有多个不同的事件侦听器

来自分类Dev

jQuery:一次创建多个事件侦听器?

来自分类Dev

jQuery中的多个链接的.on('click')事件侦听器

Related 相关文章

  1. 1

    在全局事件上处理多个侦听器

  2. 2

    事件侦听器的最佳设计模式

  3. 3

    JavaFX事件/侦听器/处理程序

  4. 4

    处理大量事件侦听器?

  5. 5

    onsubmit方法与提交事件侦听器

  6. 6

    了解不同的事件侦听器方法

  7. 7

    将事件侦听器附加到整个html文档的最佳方法

  8. 8

    删除元素上的事件侦听器的最佳方法是什么?

  9. 9

    在socket.io上添加事件侦听器以节省资源的最佳方法

  10. 10

    什么是实现长时间运行的事件侦听器的最佳方法

  11. 11

    在循环内添加事件侦听器并获取元素标签的最佳方法

  12. 12

    使用单个事件侦听器而不是多个事件侦听器

  13. 13

    在何处添加事件侦听器的最佳实践

  14. 14

    最佳实践的确认:删除事件侦听器

  15. 15

    Web应用程序的事件侦听器最佳实践

  16. 16

    最佳实践的确认:删除事件侦听器

  17. 17

    jQuery DataTables的on()事件侦听器,具有多个事件

  18. 18

    AngularJS:处理任何事件的通用侦听器

  19. 19

    Laravel事件处理程序和侦听器

  20. 20

    处理Kotlin中事件总线的通用侦听器

  21. 21

    Laravel事件处理程序和侦听器

  22. 22

    React:与事件侦听器相关的批处理状态更新

  23. 23

    Hashchange事件侦听器在将事件处理程序附加到事件之前进行侦听

  24. 24

    多个子元素的单个事件侦听器

  25. 25

    使用循环创建多个事件侦听器

  26. 26

    多个单选按钮组的事件侦听器

  27. 27

    for循环中有多个不同的事件侦听器

  28. 28

    jQuery:一次创建多个事件侦听器?

  29. 29

    jQuery中的多个链接的.on('click')事件侦听器

热门标签

归档