我正在为Android开发一个应用程序。
我的应用程序包含十个按钮,我已经设置了一个onclicklistener()方法。 十个按钮包含数字0-9。
现在,如果我点击十个按钮中的任意两个或三个按钮,则必须在编辑文本中输入相应的数字,并且必须在编辑文本框中显示。
如果我点击任何按钮,我可以显示单个数字,但如果我点击另一个按钮,则前一个值消失,并显示新值。
但我想要的是:无论我点击多少按钮,都没有。数字将出现在edittext框中。
任何人都可以向我解释代码,或者给我一个提示,以便以更简单的方式制作。
答案 0 :(得分:1)
您正在使用editText.setText("");
相反,您必须使用editText.append();
答案 1 :(得分:1)
使用共享首选项:
我认为,当您点击按钮时,您可以使用 Shared Preferences ,从Edittext获取值并添加共享首选项。单击下一步按钮后获取该共享首选项值。您可以使用每个按钮点击放置值共享首选项。
转到此问题,这有助于您解决:>> SharedPreference problem in android
使用意图:
May be used this code on button click event:
Bundle extras = getIntent().getExtras();
String value1 = extras.getString("Value1");
String value2 = extras.getString("Value2");
if (value1 != null && value2 != null) {
EditText text1 = (EditText) findViewById(R.id.EditText01);
EditText text2 = (EditText) findViewById(R.id.EditText02);
text1.setText(value1);
text2.setText(value2);
}
其他有用资源: Get Value of a Edit Text field
http://mobile.tutsplus.com/tutorials/android/android-user-interface-design-edittext-controls/
http://www.java2s.com/Code/Android/UI/GetvaluefromEditText.htm
http://geekswithblogs.net/bosuch/archive/2011/01/17/android---passing-data-between-activities.aspx
答案 2 :(得分:0)
您可以使用公共静态String变量并将新值连接到previous并将其设置为EditText
答案 3 :(得分:0)
使用以下代码
public class AsActivity extends Activity {
/** Called when the activity is first created. */
Button b1,b2,b3;
EditText et;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
b1=(Button)findViewById(R.id.button1);
b2=(Button)findViewById(R.id.button2);
b3=(Button)findViewById(R.id.button3);
et=(EditText)findViewById(R.id.editText1);
}
public void onclick(View v){
switch(v.getId()){
case R.id.button1:
et.append("1");
break;
case R.id.button2:
et.append("2");
break;
case R.id.button3:
et.append("3");
break;
}
}
}
这里我使用按钮属性你可以使用如上所示的开关语句你的onclicklistener
答案 4 :(得分:0)
在所有0-9按钮onclick事件中,您可以编写以下代码。
editText.setText((editText.getText().toString) +""+ nevText);
当你点击按钮然后上面的代码设置newText与edittext框中的前一个文本。
答案 5 :(得分:-3)