Приложение, которое я создал, просто показывает, что пользователи набрали в 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",
- Когда я нажимаю "сбросить", все сбрасывается,
- Повторите «бар», затем он показывает «бар».Отлично!
Но когда я просто изменяю строку
input_editable.clear();
на эту
input.setText("");
, то это происходит после запуска приложения:
- Я набираю, например, "foo" и нажимаю кнопку "показать", она показывает "foo",
- Когда я нажимаю "сбросить", все кажется сброшенным,
- Повторно введите «bar», затем «foo» все еще остается после нажатия «show»
Почему?
Спасибо