Android在onClick上做的不同方式

时间:2015-05-20 18:49:49

标签: android

我在这里查看一个项目,它有一种使用onClick的方式,这与我在任何其他时间看到的不同。

通常在onCreate或其他任何时候设置按钮的监听器。

这里的活动xml中有android:onClick =“navigateToUrl”。然后,这似乎启动了类代码中的方法navigateToUrl。

我只是想知道这两种方法有什么区别?

2 个答案:

答案 0 :(得分:2)

他们以同样的方式工作。在xml版本中,框架在通胀期间添加了onClickListener,它使用Context上的反射,通过查找具有该名称的函数调用它,并调用它。所以效率略低,但还不足以让人担心。最大的优点是onCreate不那么混乱,最大的缺点是要弄明白点击时视图的作用你必须阅读xml而不是代码。你使用哪个是个人喜好的问题。我目前处于明确的onClickListener组中,因为我不喜欢幕后魔术。

答案 1 :(得分:0)

对于后者,您需要始终保持public方法。如果您不希望公开显示您的方法,则您希望实现一个侦听器。