我想在不丢失之前的文字的情况下向EditText添加文字。
输入74
时, 例如,我想将"4"
添加到文本框中,而不会删除之前输入的数字"7"
。
public void add4()
{
res = (EditText)findViewById(R.id.editText1);
if(res.getText().toString() == "0")
{
res.setText("4");
}
else
{
// add number 4 to the remaining string
}
}
答案 0 :(得分:9)
您可以使用append
方法附加到现有文字。
res.append("4");
http://developer.android.com/reference/android/widget/TextView.html#append(java.lang.CharSequence)
(作为旁注,请勿使用==
来比较字符串,请使用.equals()
)
答案 1 :(得分:2)
试试这个:
我在字符串对象上使用了.equals
方法,以避免在对象为null或不是字符串时可能发生的NullPointerException
。
public void add4() {
res = (EditText)findViewById(R.id.editText1);
if( "0".equals(res.getText().toString()) )
{
res.setText("4");
}
else
{
res.append("4");
}
}
答案 2 :(得分:0)
res.append("4");
或您可以使用res.setText(res.getText() + "4");