Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

onclick listener in android

I used two image button for Next and Back and i used onclick event for those button i want to which image button fire on onclick and run particular function for next or back in onclick event how will i get which image button fire or onclick event at runtime

like image 387
sivaraj Avatar asked Aug 17 '10 18:08

sivaraj


2 Answers

You can use anonymous inner classes to write an onClick function for each button.

Button button1 = getMyButton();
button1.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View v) {
      // button 1 was clicked!
   }
  });
Button button2 = getMyButton();
button2.setOnClickListener(new OnClickListener() {
   @Override
   public void onClick(View v) {
      // button 2 was clicked!
   }
  });

As Konstantin mentioned, you can also use the passed in View and switch on the id. However, I find that a bit messier if you end up with lots of clickable things.

like image 140
Cheryl Simon Avatar answered Nov 09 '22 17:11

Cheryl Simon


Use View.getId() to distinguish between different views that fire onClick events.

@Override
public void onClick(View view) {
    switch (view.getId()) {
    case R.id.download:
    //code..
    break;
    case R.id.play:
    //code..
    break;
    case R.id.pause:
        //code..
    break;
    default:
        //code..
    break;
    }
}
like image 41
Konstantin Burov Avatar answered Nov 09 '22 16:11

Konstantin Burov