与android有关的问题:onClick =“selfDestruct”xml方法

时间:2016-04-06 19:52:24

标签: android button listener

一般的Android和编程新手。这个问题可能听起来很傻,但我很欣赏答案。问题描述和推理在一开始,问题就在这一切的最后。

我想将一个监听器应用于android中的按钮。我从android.googlesource.com理解的方式是有两种方法可以做到:

  1. OnClickListener应用于activity.java中的按钮 或
  2. 使用此
  3. xml布局中的按钮指定方法

    {@link android.R.attr#onClick android:onClick}

    他们提供了以下xml布局示例:

     <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:onClick="selfDestruct"
        android:text="@string/self_destruct" />
    

    加上activity.java

    中的代码
     public void selfDestruct(View view) {
        // Kabloey
    }
    

    android.googlesource.com

    问题:

    1. 根据这一点:示例中的{@link android.R.attr#onClick android:onClick} android.R.attr如下:

      android:layout_height="wrap_content"

      android:layout_width="wrap_content"

      android:text="@string/self_destruct"

      1. 这是:

        android:text="@string/self_destruct"

        android:onClick="selfDestruct"

      2. 是否将名为self_destruct的按钮注册为侦听器?

        1. 如果我想以xml格式添加多个按钮侦听器,我该如何在java文档中编写它?
        2. 提前谢谢你 真的很感激。

2 个答案:

答案 0 :(得分:0)

  

这是:

     

机器人:文本=&#34; @串/ self_destruct&#34;机器人:的onClick =&#34;自毁&#34;

     

是否将名为self_destruct的按钮注册为侦听器?

该按钮不被称为&#34;任何事情,它只有@string/self_destruct文件中定义的strings.xml值的文本。

但是,是的,public void selfDestruct(View view)方法是为XML设置的侦听器调用的方法。

  

如果我想以xml格式添加多个按钮监听器,我该如何在java文档中编写它?

您只能为View设置一个单击侦听器。

答案 1 :(得分:0)

  1. 是的,layout_heightlayout_widthtext是属性。您 可以了解更多关于android属性的信息 here。 但请记住,不同的视图可以使用相同的属性 以不同的方式。
  2. 没有。此示例中的android:text属性仅引用名为self_destruct的字符串资源,以决定应在按钮中显示哪个文本。要区分视图,您可以使用android:id
  3. 正如其他人已经提到的,您只能使用XML指定一个onClickListener