当我有:
OnClickListener listener = new OnClickListener() {
@Override
public void onClick(View v) {
//getSource button here --->actionButton
}
}
button1.setOnClickListener(listener);
如何获取在onClick
方法中点击的按钮?
答案 0 :(得分:2)
请参阅onClick
方法上的v
参数,该参数代表点击的视图。
然后,您可以使用v.getId()
查看已点击的视图。
@Override
public void onClick(View v) {
if(v.getId() == R.id.button1){
//button1 clicked
}
}
答案 1 :(得分:1)
得到id
@Override
public void onClick(View v) {
//getSource button here --->actionButton
if (v.getId() == R.id.someId)
// do some stuff
}
在这种情况下,v
被Button
点击,因此您可以获得id
View
的{{1}}并使用{{进行比较1}}或将其放在Button
语句中。
答案 2 :(得分:1)
您可以使用Button
方法获取已按getId()
的ID。
OnClickListener listener = new OnClickListener() {
@Override
public void onClick(View v) {
Button button = (Button) findViewById(v.getId());
Toast.makeText(this, button.getText().toString()+" button is pressed", Toast.LENGTH_SHORT).show();
}
}
答案 3 :(得分:0)
在xml文件中,使用android:onClick="onClick"
和view.getId()
将获得单击它的按钮的id,并使用switch case语句为每个按钮执行相关的作业。代码如下所示:
public void onClick(View view) {
switch (view.getId()) {
case R.id.button1:
//Do something for this button
break;
case R.id.buttton2:
//DO something for this button
break;
}