Android:如何不保存实例状态?

时间:2011-06-01 07:20:51

标签: java android webview instance bundle

我的应用已登录,一旦授予访问权限,它会为SD卡创建一个新的html文件,该html文件的输出或外观取决于记录器的帐户。

写完后,该应用程序将进入下一个活动

        Intent nextActivity = new Intent(MyMainAct.this, AppView.class);
        startActivity(nextActivity);

AppView类是UI是webview的下一个活动。它查看登录时创建的html。

当我点击“以不同用户身份登录”按钮时,我将返回主要活动,即MyMainAct。我使用以下代码:

        Intent nextActivity = new Intent(AppView.this, MyMainAct.class);
        startActivity(nextActivity);

当我再次登录(作为不同的用户)时,由于创建的html不同,我期望不同的UI。但它没有发生。第一个记录器的相同html由webview呈现。

我查看了第二个记录器创建的html代码,它与第一个不同。但webview提供了第一个记录器的html。

是关于实例状态吗?这就是我的想法,这就是为什么我不想保存实例状态(bundle)。

修改

如何忽略我的应用程序的savedInstanceState?

我的MainActivity:

public void onCreate(Bundle icicle) {
    super.onCreate(icicle);

我的AppView活动:

public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);

2 个答案:

答案 0 :(得分:0)

试试这个,看它是否有效。

Intent nextActivity = new Intent(AppView.this, MyMainAct.class);
startActivity(nextActivity);
finish();

答案 1 :(得分:0)

确保当用户选择“以不同用户身份登录”选项时,显示HTML的活动为finish(即在其上调用finish方法)。如果您忽略了savedInstanceState事件中的onCreate参数(您可能会这样做,我推测),下次启动此活动时,它将是全新的实例。