我正在创建我自己的导航抽屉在我的Android应用程序,我想知道哪个是更好的做法。
我可以:
在我的layout.xml中添加这样的标签android:onClick="btnHome"
然后将方法btnHome()添加到我的.java文件中。
OR
给我的元素一个像这样的id:android:id="@+id/btnHome"
在setContentView()或onCreate()方法中给它一个onClickListenerfindViewById(R.id.btnHome).setOnClickListener(this);
然后在我的类
@Override
public void onClick(View v) {
switch (v.getId()) {
case R.id.btnHome: // The 'Home' button in the navigation drawer
//TODO: Make it go to home screen
break;
}
}
我知道两种方法都能产生相同的结果,但我很好奇它们之间是否有我不知道的区别。
使用setOnClickListener"总是推荐使用"android:onClick"。你应该创建一个单独的onclicklistener;对于每个按钮,除非所有按钮做同样的事情或共享功能,在这种情况下,你可以只创建一个onclicklistener;并将它分配给所有按钮。也可以使用Kotlin和ViewBinding。