Android按钮仅在第二次单击时起作用
我正在开发我的第一个Android Calculator应用程序。 我遇到了一个缺陷。 我添加了几个按钮,在单击这些按钮时,它会将相应的文本放在EditText
字段上。 主要问题如下所述,在运行项目时,必须单击两次按钮以将相应的文本首次放在EditText
字段上。 例如, Button1
在点击时在EditText
字段上放置’1’。 在运行时,首先单击该按钮不执行任何操作。 只有在第二次单击时,它才会在EditText
字段上显示“1”。
该守则如下,
XML Button和EditField,
MainActivity.java
Button onClick的相应function,
public void set1(View v){ final Button button1 = (Button) findViewById(R.id.button1); button1.setOnClickListener(new OnClickListener(){ public void onClick(View v) { EditText tv = (EditText) findViewById(R.id.textView1); String text=tv.getText().toString(); tv.setText(text+"1"); } }); }
更改set1()
方法如下,
public void set1(View v) { EditText tv = (EditText) findViewById(R.id.textView1); String text=tv.getText().toString(); tv.setText(text+"1"); }
如果你在xml中调用onClick按钮的set1()
方法,那么你不需要再次在该方法中找到按钮的ID。 所以简单地看起来像,
public void set1(View v) { EditText tv = (EditText) findViewById(R.id.textView1); String text=tv.getText().toString(); tv.setText(text+"1"); }
现在在你的xml for button中
android:onClick="set1"