Reputation: 1
I'm new here, so i want to ask about title above,
i Have code like this:
public class TanyaDokter extends Fragment {
View View;
public TanyaDokter(){}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
final View view = inflater.inflate(R.layout.activity_tanya_dokter, container, false);
Button button = (Button)view.findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener()
{
public void onClick(View v){
switch(v.getId()){
case R.id.button1:
Intent intent1 = new Intent(view.getContext(), FormTanyaDokter.class);
startActivity(intent1);
break;
this code is success to click one button, but i want to make two or more button, so my question is how to make this code can handle two or more button click. thanks
Upvotes: 0
Views: 54
Reputation: 9225
Firstly create buttons in xml file: and then: There are two ways:
Button button = (Button)view.findViewById(R.id.button1);
Button button2 = (Button)view.findViewById(R.id.button2);
Button button3 = (Button)view.findViewById(R.id.button3);
button.setOnClickListener(this);
button2.setOnClickListener(this);
button3.setOnClickListener(this);
----
}
public void onClick(View v){
switch(v.getId()){
case R.id.button1:
Intent intent1 = new Intent(view.getContext(), FormTanyaDokter.class);
startActivity(intent1);
break;
case R.id.button2:
//your action
break;
case R.id.button3:
//your action
break;
}
}
Button button = (Button)view.findViewById(R.id.button1);
Button button2 = (Button)view.findViewById(R.id.button2);
Button button3 = (Button)view.findViewById(R.id.button3);
button.setOnClickListener(new OnClickListener() {
public void onClick(View v){
Intent intent1 = new Intent(view.getContext(), FormTanyaDokter.class);
startActivity(intent1);
}};
button2.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
}
});
button3.setOnClickListener(new OnClickListener() {
public void onClick(View v){
}
});
Upvotes: 1
Reputation: 3513
You can also set the onClickListener to a variable, and set all buttons to it. For example
View.onClickListener listener = new onClickListener()
{
void onClick...
};
button1.setOnClickListener(listener);
button2.setOnClickListener(listener);
button3.setOnClickListener(listener);
Upvotes: 0
Reputation: 9375
You can add more button to xml layout and then handle all click by this
Button button = (Button)view.findViewById(R.id.button1);
Button button2 = (Button)view.findViewById(R.id.button2);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent1 = new Intent(view.getContext(), FormTanyaDokter.class);
startActivity(intent1);
}
});
button2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent intent1 = new Intent(view.getContext(), SecondActivity.class);
startActivity(intent1);
}
});
Upvotes: 0
Reputation: 8149
For Single Button
Button cancel = (Button) view.findViewById(R.id.button1);
cancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// your logic here....
}
});
for multiple buttons.
Button cancel1 = (Button) view.findViewById(R.id.button1);
Button cancel2 = (Button) view.findViewById(R.id.button2);
Button cancel3 = (Button) view.findViewById(R.id.button3);
cancel1 .setOnClickListener(this);
cancel2 .setOnClickListener(this);
cancel2 .setOnClickListener(this);
OnClicked handle here
@Override
public void onClick(View v){
switch(v.getId()){
case R.id.button1:
Intent intent1 = new Intent(view.getContext(), FormTanyaDokter.class);
startActivity(intent1);
break;
case R.id.button2:
Intent intent1 = new Intent(view.getContext(), FormTanyaDokter.class);
startActivity(intent1);
break;
case R.id.button3:
Intent intent1 = new Intent(view.getContext(), FormTanyaDokter.class);
startActivity(intent1);
break;
}
}
Upvotes: 0
Reputation: 10969
In order to handle more than one button click event then you have to do,
public void onClick(View v){
switch(v.getId()){
case R.id.button1:
Intent intent1 = new Intent(view.getContext(), FormTanyaDokter.class);
startActivity(intent1);
break;
case R.id.button2:
//your action
break;
}
}
But I will suggest you to refer appropriate documentation before raising a question, even check this Stackoverflow-Question
Upvotes: 0