我创建的应用程序仅显示用户在EditText
.
这是它的onCreate
方法MainActivity
:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final EditText input = (EditText) findViewById(R.id.input);
final TextView output = (TextView) findViewById(R.id.output);
final Editable input_editable = (Editable) input.getText();
final Button show = (Button) findViewById(R.id.show);
final Button reset = (Button) findViewById(R.id.reset);
show.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
String text = input_editable.toString();
output.setText(text);
}
});
reset.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
input_editable.clear();
}
});
}
问题是这样的:
当我运行该应用程序时,一切正常:
- 我输入例如“foo”并单击“显示”按钮,它显示“foo”,
- 当我点击“重置”时,一切都被重置了,
- 重新键入“bar”,然后显示“bar”。好的!
但是,当我只是换行
input_editable.clear();
对此
input.setText("");
然后在启动应用程序后发生这种情况:
- 我输入例如“foo”并单击“显示”按钮,它显示“foo”,
- 当我点击“重置”时,一切似乎都被重置了,
- 重新键入“bar”,然后单击“show”后“foo”仍然存在
为什么?
谢谢