当前位置: 首页 > 面试题库 >

setOnCheckedChangeListener参数

华恩
2023-03-14
问题内容
    RadioGroup radioGroup = (RadioGroup) findViewById(R.id.orientation);
    radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener()
    {
        public void onCheckedChanged(RadioGroup group, int checkedId) {
            switch (checkedId) {
                case R.id.horizontal:
                    group.setOrientation(LinearLayout.HORIZONTAL);
                    break;
                case R.id.vertical:
                    group.setOrientation(LinearLayout.VERTICAL);
                    break;
            }
        }
    });

实际上,radioGroup.setOnCheckedChangeListener是什么?这是方法吗?那是什么呢?


问题答案:

setOnCheckedChangeListener()是一种设置 侦听 器的方法,该 侦听 器侦听特定的动作。

这个想法是这样的:

  1. 您希望单选按钮在用户更改选择时执行某些操作。

  2. 只要更改了选择,系统就会通知单选按钮。如果单选按钮设置了侦听器,则侦听器“侦听”事件-有一种机制可以通过调用其方法来执行某些操作onCheckedChanged()

  3. 您应该意识到,在onCheckedChanged()事件发生的那一刻就调用了,而不是在将侦听器传递给setOnCheckedChangeListener()方法的时候被调用了-因此在您的代码示例被调用时就没有了!

  4. new RadioGroup.OnCheckedChangeListener()需要类来传递侦听器的 行为 -直到Java 7(包括Java 7)为止,如果没有类,就不能仅传递方法。从Java 8开始,您可以使用lambda表达式更轻松地实现它,但是现在就不用理会它。

这是一个相当高级的主题,我建议您首先学习以下内容:

  • 侦听器设计模式(又名观察员)
  • 匿名班

您可能会以简化的方式考虑它。您的代码具有以下含义:

亲爱的radioGroup
每当支票被更改时,您应该做的事情是:

  • 如果选择了“水平”,
    请致电group.setOrientation(LinearLayout.HORIZONTAL)
  • 如果选择了“垂直”,则
    调用group.setOrientation(LinearLayout.VERTICAL)

注意 现在 不要 执行此操作, 仅在 更改支票 后才可以执行



 类似资料:
  • Note This list is auto-generated from the source code and contains the most recent parameter documentation. Attitude EKF estimator The module where these parameters are defined is: examples/attitude_e

  • 引用参数是reference to a memory location变量reference to a memory location的reference to a memory location 。 通过引用传递参数时,与值参数不同,不会为这些参数创建新的存储位置。 参考参数表示与提供给方法的实际参数相同的存储器位置。 您可以使用ref关键字声明引用参数。 以下示例演示了这一点 - using

  • 属性参数用来给已定义的属性附加元数据,类似于脚本语言的 Decorator 或者 C# 的 Attribute。 属性检查器相关参数 参数名 说明 类型 默认值 备注 type 限定属性的数据类型 (Any) undefined 详见 type 参数 visible 在 属性检视器 面板中显示或隐藏 boolean (注1) 详见 visible 参数 displayName 在 属性检视器 面板

  • 属性参数用来给已定义的属性附加元数据,类似于脚本语言的 Decorator 或者 C# 的 Attribute。 属性检查器相关参数 参数名 说明 类型 默认值 备注 type 限定属性的数据类型 (Any) undefined 详见 type 参数 visible 在 属性检视器 面板中显示或隐藏 boolean (注1) 详见 visible 参数 displayName 在 属性检视器 面板

  • 我们用过的一些内置函数携带参数,即你提供给函数让它工作的一些值。比如,如果你想计算一个数的正弦值,你需要指定这个数是多少。因此sin函数使用一个double值作为参数。 一些函数携带一个以上的参数,如pow携带两个double参数,分别作为底数和幂。 注意,在所有这些例子中,我们不仅要指定参数的个数,还要指定参数的类型。所以当你写一个类定义时,发现参数列表指定了每个参数的类型,这应该没什么奇怪的。

  • 本文向大家介绍python函数参数(必须参数、可变参数、关键字参数),包括了python函数参数(必须参数、可变参数、关键字参数)的使用技巧和注意事项,需要的朋友参考一下 ps:下面给大家介绍下python中函数、方法、关键字的区别 一、关键字 二、函 数   函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。可以自己定义一个函数。   --函数-封装了独立功能,可以直接调用