我有ListActivity
一个EditText
和一个ListView
。内容ListView
根据EditText
内容变化。我执行以下步骤:
1) 填写一些内容EditText
2)因此Listview
变化(正确)
3)我滚动列表视图
4)我按下后退按钮
在这一点上,我希望回到以前的活动,而我碰巧EditText
被删除了,因此是ListView
空的。
有没有办法告诉EditText
按下后退按钮时不要擦除自己?
非常感谢。
G
我有ListActivity
一个EditText
和一个ListView
。内容ListView
根据EditText
内容变化。我执行以下步骤:
1) 填写一些内容EditText
2)因此Listview
变化(正确)
3)我滚动列表视图
4)我按下后退按钮
在这一点上,我希望回到以前的活动,而我碰巧EditText
被删除了,因此是ListView
空的。
有没有办法告诉EditText
按下后退按钮时不要擦除自己?
非常感谢。
G
您可以将 editText 保存在共享首选项中。在您返回或再次打开应用程序时始终保存文本。看看:共享首选项
像这样:
private SharedPreferences pref;
在您的二等舱中:
pref.edit().putString("text", Text).commit();
主类:
String texto = pref.getString("text", "");
您可以使用 onPause 方法来存储 EditText 值。在SharedPrefrence或全局变量中。
@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
}
按下后退按钮时覆盖事件
我只想在我按下后退按钮时完成活动。不管我在做什么以及哪个对象有焦点
以下是如何在Activity
按下后退时强制完成...
@Override
public void onBackPressed() {
finish();
}