哪一个是Android中,以实现OnClickListener最好的方法? [英] which one is best way to implements OnClickListener in Android?
问题描述
其中之一就是实现了Android的OnClickListener接口最佳方式。
/ * - 首先 - * /
公共类EmployeeActivity扩展活动实现OnClickListener
{ / **当第一次创建活动调用。 * /
@覆盖
公共无效的onCreate(捆绑savedInstanceState){
super.onCreate(savedInstanceState);
的setContentView(R.layout.main); 按钮btnUpdate =(按钮)findViewById(R.id.btnUpdate);
按钮btnEdit =(按钮)findViewById(R.id.btnEdit); btnUpdate.setOnClickListener(本);
btnEdit.setOnClickListener(本); @覆盖
公共无效的onClick(视图v){ 如果(V == btnAddEmployee)
{}
如果(V == btnUpdate)
{}
}
/ - 二 - /
公共类EmployeeActivity延伸活动{ / **当第一次创建活动调用。 * /
@覆盖
公共无效的onCreate(捆绑savedInstanceState){
super.onCreate(savedInstanceState);
的setContentView(R.layout.main); 按钮btnUpdate =(按钮)findViewById(R.id.btnUpdate);
按钮btnEdit =(按钮)findViewById(R.id.btnEdit); btnUpdate.setOnClickListener(新OnClickListener(){ @覆盖
公共无效的onClick(视图v){
// TODO自动生成方法存根 }
}); btnEdit.setOnClickListener(新OnClickListener(){ @覆盖
公共无效的onClick(视图v){
// TODO自动生成方法存根 }
});
}
}
其中之一就是实现了Android的OnClickListener接口最好的办法
块引用>这完全取决于什么最适合你作为开发商。他们所有的工作一样,你甚至有另一种选择申报
的onClick
XML格式。我喜欢的第一个,特别是如果你有多个按钮
S中的你想分享的功能。但是,一个更好的办法首先是开关
在ID
的查看<的/ code>被点击。类似
@覆盖
公共无效的onClick(视图v){
INT ID = v.getId();
开关(ID)
{
案例R.id.btnUpdate:
// 做工作
打破;
案例R.id.btnEdit
//做编辑按钮工作
打破;
}
//放共享的功能code就像启动一个活动,调用一个方法,等等。
}第二个我想,如果有一个或两个
按钮
和他们有完全不同的功能才可以使用。我认为这种方式使得code看起来更加混乱和混乱,如果你有太多的按钮
秒。但这些工作都一样,并不会改变你的应用程序的性能。which one is best way to implements OnClickListener Interface in Android.
/*- First - */
public class EmployeeActivity extends Activity implements OnClickListener { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button btnUpdate = (Button)findViewById(R.id.btnUpdate); Button btnEdit = (Button)findViewById(R.id.btnEdit); btnUpdate.setOnClickListener(this); btnEdit.setOnClickListener(this); @Override public void onClick(View v) { if (v == btnAddEmployee) {} if (v == btnUpdate) {} }
/- Second -/
public class EmployeeActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button btnUpdate = (Button)findViewById(R.id.btnUpdate); Button btnEdit = (Button)findViewById(R.id.btnEdit); btnUpdate.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub } }); btnEdit.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // TODO Auto-generated method stub } }); } }
解决方案which one is best way to implements OnClickListener Interface in Android
This depends solely on what fits best for you as the developer. They all work the same and you even have another option to declare
onClick
in xml. I like the first especially if you will have multipleButton
s that you want to share functionality. But a better way to do the first is toswitch
on theid
of theView
being clicked. Something like@Override public void onClick(View v) { int id = v.getId(); switch (id) { case R.id.btnUpdate: // do work break; case R.id.btnEdit // do work for edit button break; } // put shared functionality code like starting an Activity, calling a method, etc... }
The second I like to use if there is only one or two
Button
s and they have completely different functionality. I think this way makes the code look more cluttered and messy if you have too manyButton
s. But these all work the same and won't change the performance of your app.这篇关于哪一个是Android中,以实现OnClickListener最好的方法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!