Android - TextEdit上的物理后退按钮会删除内容

时间:2013-03-28 12:35:45

标签: android listview button android-edittext back

我有ListActivity EditTextListViewListView的内容根据EditText内容进行更改。我执行以下步骤:

1)填写EditText

中的内容

2)因此Listview更改(正确)

3)我滚动列表视图

4)我按后退按钮

此时我希望回到之前的活动,而我发现EditText被删除,因此ListView为空。

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

非常感谢。

3 个答案:

答案 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值。在SharedPrefrenceGlobal 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();
}