在之前的活动中返回上一个州

时间:2015-09-21 08:11:41

标签: android android-activity

我有两个活动A和B.当应用程序启动时,活动A被加载,我从数据库加载数据。 我可以毫无问题地去活动B,但是当我回到活动A时,旧数据会被查看片刻并重新加载活动。

知道如何解决这个问题吗?

2 个答案:

答案 0 :(得分:0)

在加载数据之前清除所有字段从数据开始加载数据需要很少的时间,并且在此前一个明确的字段之前。

答案 1 :(得分:0)

此处您可以将所有字段设为空白..

您需要覆盖onSaveInstanceState(Bundle savedInstanceState)并将要更改的应用程序活动状态值写入Bundle参数,如下所示:

@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
  super.onSaveInstanceState(savedInstanceState);
  /* Save UI state changes to the savedInstanceState.
  * This bundle will be passed to onCreate if the process is
  * killed and restarted activity
  */
  savedInstanceState.putString("YourString", "");

  // etc...
  // etc...
}

Bundle本质上是一种存储NVP(“名称 - 值对”)映射的方式,它将被传递到onCreate()和onRestoreInstanceState(),在那里你可以提取这样的值:

@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
  super.onRestoreInstanceState(savedInstanceState);
  // Restore UI state from the savedInstanceState.
  // This bundle has also been passed to onCreate.

  String myString = savedInstanceState.getString("YourString");
}

您通常会使用此技术来存储应用程序的实例值(选择,未保存的文本)等。