0

我有ListActivity一个EditText和一个ListView。内容ListView根据EditText内容变化。我执行以下步骤:

1) 填写一些内容EditText

2)因此Listview变化(正确)

3)我滚动列表视图

4)我按下后退按钮

在这一点上,我希望回到以前的活动,而我碰巧EditText被删除了,因此是ListView空的。

有没有办法告诉EditText按下后退按钮时不要擦除自己?

非常感谢。

G

4

3 回答 3

1

您可以将 editText 保存在共享首选项中。在您返回或再次打开应用程序时始终保存文本。看看:共享首选项

像这样:

private SharedPreferences pref;

在您的二等舱中:

pref.edit().putString("text", Text).commit();

主类:

String texto = pref.getString("text", "");
于 2013-03-28T12:43:05.393 回答
0

您可以使用 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
}

按下后退按钮时覆盖事件

于 2013-03-28T12:38:05.107 回答
0

我只想在我按下后退按钮时完成活动。不管我在做什么以及哪个对象有焦点

以下是如何在Activity按下后退时强制完成...

@Override
public void onBackPressed() {
    finish();
}
于 2013-03-28T12:59:07.867 回答