我有1个功能来打印按钮的文本,并且我将该功能用于3个按钮,我如何知道用户单击哪个按钮?(对不起,但我的英语水平很低)例如:
public void function(View view) {
TextView text = (TextView) findViewById(R.id.textView);
Button button1= (Button) findViewById(R.id.button3);
Button button1= (Button) findViewById(R.id.button4);
Button button1= (Button) findViewById(R.id.button5);
text.setText(button <?> .getText()); }
是用户单击的按钮的编号
以任何方式知道用户单击哪个按钮?请帮忙,谢谢。
您可以定义一键式侦听器,并为所有按钮设置此侦听器。例如:
private OnClickListener genericListerner = new OnClickListener() {
public void Click(View v) {
switch(v.getId())
{
case R.id.button3:
text.setText(button3.getText().toString());
break;
case R.id.button4:
text.setText(button4.getText().toString());
break;
case R.id.button5:
text.setText(button5.getText().toString());
break;
default:
//do something
}
};
并按以下方式设置侦听器:
button3.setOnClickListener(genericListener);
button4.setOnClickListener(genericListener);
button5.setOnClickListener(genericListener);
我不确定这是否是您要的内容,但是这段代码的基本作用是,如果您单击按钮3,则将textview的文本设置为按钮3的文本;如果您单击按钮4,则将textview的文本设置为按钮4的文本。如果您单击按钮5,则它将textview的文本设置为按钮5的文本。
希望这可以帮助。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句