我有ListActivity
EditText
和ListView
。 ListView
的内容根据EditText
内容进行更改。我执行以下步骤:
1)填写EditText
2)因此Listview
更改(正确)
3)我滚动列表视图
4)我按后退按钮
此时我希望回到之前的活动,而我发现EditText
被删除,因此ListView
为空。
当按下后退按钮时,有没有办法告诉EditText
不要擦除自己?
非常感谢。
答案 0 :(得分:1)
您可以在共享首选项中保存editText。要在您退回或重新打开应用程序时始终保存文本。请查看:Shared Preferences
像这样:
private SharedPreferences pref;
在你的SecondClass中:
pref.edit().putString("text", Text).commit();
MainClass:
String texto = pref.getString("text", "");
答案 1 :(得分:0)
您可以使用onPause方法存储EditText值。在SharedPrefrence或Global variable中。
@Override
public void onPause() {
super.onPause();
// Get the current value from Edit text and store the value on sharedpref or global variable
}
在onPause方法中,您可以将EditText的当前值保存为共享首选项。
或者你可以覆盖后退按钮的事件并执行与下面相同的操作 你可以使用以下方法
@Override
public void onBackPressed(){
//your code here to save it to shared pref or global varialble then invoke relevant activity manually
}
按下后退按钮时覆盖事件
答案 2 :(得分:0)
我只想在按下按钮时完成活动。无论我在做什么以及哪个对象都有焦点
以下是按下后退时强制完成Activity
的方法......
@Override
public void onBackPressed() {
finish();
}