开发者

implements OnClickListener VS. new Button.OnClickListener() {};

I have a question about implementing OnClickListeners for developing with the ADT. I'm unsure of which way is more efficient, can anyone please provide me with pro's and con's of each approach?

class x extends Activity implements OnClickListener
{
  button.SetOnClickListener(this);
  OnclickListener(View v)
  {
    switch(v.getGetId());
    {
      case R.id.y:
      //do stuff here
      break;
      .
      .
      .
    }
  }

}

<-VERS开发者_开发知识库US->

class a extends Activity
{
   .
   .
   .
   btn.setOnClickListener(new Button.OnClickListener()
   {

    OnClickListener(View v)
    {
      //do stuff here
    }

   });

}


I think its mostly a case of personal preference. Any performance difference is likely going to be negligible.

Personally, I prefer the nested class:

  1. Its harder to screw up
  2. Switch statements are ugly
  3. You can make use of local variables that may be useful

But some people think that nested classes are ugly, and so prefer the implements approach. That approach does work better if you only have one listener implemented in the activity.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜