首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从childActivity返回后,Mainactivity重新启动

从childActivity返回后,Mainactivity重新启动
EN

Stack Overflow用户
提问于 2013-10-31 00:49:34
回答 2查看 454关注 0票数 0

基本上,我从父(ExplorerActivity)示例调用一个新的活动(MainActivity),并混合了伪代码.

代码语言:javascript
复制
public class MainActivity extends Activity {

boolean isLoggedin=false;

onCreate(){
 Print(isLoggedin)
 isLoggedin=true;
}


public boolean onOptionsItemSelected(MenuItem item) {

Intent i = new Intent(MainActivity.this, ExplorerActivity.class);
 startActivityForResult(i, 0);
 return true;
}

protected void onActivityResult(int requestCode, int resultCode, Intent data){
     super.onActivityResult(requestCode, resultCode, data);
     Log.e("Teste", "Mainactivty: onActivityResult was called!!");
     xTaskThread = new xTaskThread();
     xTaskThread.start();
}

------------ ExplorerActivity -----
public class ExplorerActivity extends ListActivity {
Intent i = getIntent();
i.putExtra("fileURL", file.getAbsolutePath());
setResult(RESULT_OK, i);
finish();

Manifest:
<activity
        android:name="com.geoclient.misc.ExplorerActivity"
        android:label="@string/app_name" 
        android:screenOrientation="landscape">
</activity>
-------------------------------------
  • 一切都很好,直到ChildActivity (ExplorerActivity)返回。服从命令成功:
代码语言:javascript
复制
1. ExplorerActivity, finish activity... (finish())
2. OnCreated called, printed('isLoggedin=FALSE') <--- (I expected TRUE) Shouldn't keep state on variable?? (Same as restart of application...)
3. onActivityResult called, printed('Mainactivty: onActivityResult was called!!')

看起来应用程序是重新启动的..。我不明白..。我希望回到onResume(),并且变量处于相同的状态。请让我知道我哪里错了!(我在Mainactivity中与googlemap合作,不确定这是否相关。)非常感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-31 01:04:09

您还没有完全理解活动生命周期。一个活动可以在任何时候被扼杀,它不是在前台,也可以是在某些事情发生变化时(比如方向)。

如果您有要保存状态的数据,如实例变量,请在onSaveInstanceState中这样做。这就是它的目的。

票数 1
EN

Stack Overflow用户

发布于 2013-10-31 01:07:12

查看您在那里编写的清单行,ExplorerActivity似乎被迫进行了landscape定向。

因此,当您进入其中时,如果没有在onSaveInstanceState() - onRestoreInstanceState()中保存/恢复,后台堆栈中的每个活动都将失去状态。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19696539

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档