使用onClick可以提高性能吗?如果我使用onClick我不要必须设置 android:id (也避免使用新的View.OnClickListener ),这是否会提高性能所有?或者是在幕后发生的findViewById效果相同吗?
这个页面提供了两种方法作为选项,但对任何利益都没有什么指导。
http://developer.android.com/reference/android/widget/Button.html
这是一篇博客文章,他们认为onClick对于1.6后应用程序来说“更容易”和“改进”;
http://android-developers.blogspot.com/2009/10/ui-framework-changes-in-android-16.html
这个新功能减少了两者 您必须拥有的Java和XML数量 写信,留给你更多时间 专注于你的应用。
答案 0 :(得分:34)
我认为加入android:onClick
是一个非常糟糕的主意。
android:onClick
方法,您甚至可以忘记布局中有一个按钮,或者是处理其onClick
事件的方法。正如Corey Sunwold在评论中所指出的那样,我建议你坚持以编程方式定义OnClickListener
并严格分离关注点。
答案 1 :(得分:0)
我正在考虑如何测试这个....但我相信两者之间没有性能差异,它们只是同一事物的不同接口。
答案 2 :(得分:0)
当我只需要点击android:onClick
时,我就会使用Button
。
如果我需要对Button
执行其他操作,例如启用/禁用它,我会使用setOnClickListener()
作为mgv说。
另请注意android:onClick
在Android 1.5中不起作用。
答案 3 :(得分:0)
您可以考虑使用onTouchListener。我发现它更快,特别是如果你想让动作发生在按下而不是释放。