Android:如何不保存实例状态?
我的应用程序已登录,一旦授予访问权限,它会为SD卡创建一个新的html文件,该html文件的输出或外观取决于记录器的帐户。Android:如何不保存实例状态?
写作后,应用程序进入到下一个活动
Intent nextActivity = new Intent(MyMainAct.this, AppView.class);
startActivity(nextActivity);
的APPVIEW类是下一个活动中,用户界面是网页视图。它查看登录时创建的html。
当我点击“以其他用户身份登录”按钮时,我会返回主要活动MyMainAct。我用下面的代码:
Intent nextActivity = new Intent(AppView.this, MyMainAct.class);
startActivity(nextActivity);
当我登录再次(作为不同的用户),我期望的不同的UI因为创建的HTML是不同的。但它没有发生。第一个记录器的相同html由webview提供。
我查看了第二个记录器创建的html代码,它与第一个不同。但是webview提供了第一个记录器的html。
是关于实例状态吗?这就是我的想法,这就是为什么我不想保存实例状态(包)。
编辑:
我怎么不理我的应用程序的savedInstanceState?
我MainActivity:
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
我APPVIEW活动:
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
确保当用户选择了“登录为不同的用户”选项,表示HTML活性finish
ED(即调用finish
方法就可以了)。如果您忽略onCreate
事件中的savedInstanceState
参数(我认为您可能会这样做),则下次启动此活动时,它将成为它的全新实例。
感谢您的回应Xion,对于noob问题抱歉,但我该如何忽略savedInstanceState?您的意思是,我必须致电finish(); Intent nextActivity = new Intent(AppView.this,MyMainAct.class); startActivity(nextActivity);? – Kris 2011-06-01 07:57:11
是的,在你调用主要活动之前,你应该完成();'current一个(带HTML的),至于忽略'savedInstanceState',好吧......忽略它:)如果你没有以任何方式在你的HTML活动中使用它,就继续这样。对困惑感到抱歉。 – Xion 2011-06-01 07:59:23
嗨,Xion,你能给我一个关于如何忽略saveInstanceState的示例代码吗?我更新了这个问题...... – Kris 2011-06-01 08:11:42
试试这个,看看它是否工作。
Intent nextActivity = new Intent(AppView.this, MyMainAct.class);
startActivity(nextActivity);
finish();
因此,你的应用程序为每次登录创建一个新的html?还是为每个用户? – 2011-06-01 07:27:49
感谢您的回应Gab,是的,它创建了一个更新的HTML。 – Kris 2011-06-01 07:28:49