1

我想知道Android如何提供几种方法来实现其按钮单击方法。至少我找到了两种方法,第一种是在 Java 代码上使用命令侦听器,第二种是android:onClick ="method"在 xml 和public void method(View v)java 中使用。所以我的问题是,在编程的简单性和有效性的情况下,哪一个是最好的。谢谢。

4

2 回答 2

5

我听说经常在 xml 中定义 onClick 会导致 proguard 出现问题。就我个人而言,我觉得最简单的方法是在 onclicklistener 中使用 switch 和 case,但如果方法更长,那么最好给它自己的方法,以便“隐藏”它。但是,如果您需要在按下任何按钮(例如 UI 刷新)后运行通用代码,则最好将其留给 switch 和 case 或 if/else

// 只是为那些想在 xml 和 proguard 中使用 OnClick 的人添加

添加这个:

 -keepclassmembers class * extends android.app.Activity { 
   public void *(android.view.View); 
 }

然而,在我的拙见中,越混淆越开心:P

于 2012-12-19T00:48:05.863 回答
0

Java 通常更容易,因为如果您以一个 Activity 的许多 XML 布局(不同的方向、分辨率、语言等)结束,那么每次您想要添加、更改或删除事件时都必须修改它们(a例如长按)。您必须修改的文件数量越少越好。此外,通过将各种事件的命名保留在 XML 文件之外,您可以将它们保持在最小大小,仅包含表达每个布局真正不同之处所需的信息,而不是在它们上重复一些信息。

使用 Java,您在创建代码方面也有更多的可能性。例如,您可以创建一个匿名类并使用它来捕获某些当前状态以供您的侦听器使用。

最后,如果您想动态创建一些按钮/字段;您可以保持管理事件的过程相同,而不是在不同的文件中使用两种不同的方法。

于 2012-12-19T10:55:55.643 回答