哪个是在android中实现点击监听器的最佳方式

时间:2013-09-28 11:08:28

标签: android textview android-xml onclicklistener android-button

在android中实现点击监听器的最佳方法是什么?

  1. 机器人:的onClick = “myClickHandler”

  2. 实现OnClickListener

  3. setOnClickListener(new View.OnClickListener()

1 个答案:

答案 0 :(得分:2)

  • android:onClick =“myClickHandler”

这将调用Activity中的方法myClickHandler(View v)。知道Activity负责此方法是重要的。即使您在片段的布局中使用它。

  • 实现OnClickListener

您必须覆盖onClick(View v)。如果您有更多可单击的视图,则可以使用此视图捆绑此方法中的所有视图代码。这是更好的可维护性。它还减少了对象的创建。如果您有多个按钮,IMO这比将多个单击侦听器关联到按钮更好。

onClick(View v){
    switch(v.getId())
    case R.id.button1:
       // do something related to this button 1
    case R.id.button2:
       // do something related to this button 2
    ...

}
  • setOnClickListener(new View.OnClickListener()

如果您有一个视图,则使用匿名类直接设置侦听器以提高可读性。有了这个,你大多数都在视图范围内实现了监听器。

何时使用第二种或第三种方法没有真正的惯例。正如SimonAndréForsberg已经评论的那样,这主要是基于意见。但要小心第一种方法,特别是在Fragment场景中。