我正在开发我的第一个android计算器应用程序。我陷入一个单一的缺陷。我添加了几个按钮,然后单击这些按钮,它将把各自的文本放在“ EditText字段”上。主要问题描述如下:在运行项目时,必须单击两次按钮才能将相应的文本EditText首次放置在字段上。例如,单击时Button1将“ 1”放在EditText字段上。在运行时,首先单击该按钮无效。仅在第二次单击时,它将“ 1”放在EditText字段上。
EditText
Button1
该守则如下:
XML按钮和EditField,
<EditText android:id="@+id/textView1" android:layout_width="match_parent" android:layout_height="60dp" android:layout_alignParentTop="true" android:layout_centerHorizontal="true" android:ellipsize="end" android:ems="10" android:gravity="right" android:hint="@string/textView1" /> <Button android:id="@+id/button1" android:layout_width="60dp" android:layout_height="60dp" android:hint="@string/button1" android:onClick="set1" />
MainActivity.java
Button onClick的相应功能,
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()如下更改您的方法,
set1()
public void set1(View v) { EditText tv = (EditText) findViewById(R.id.textView1); String text=tv.getText().toString(); tv.setText(text+"1"); }