梦书之家(移动开发)

你有一个苹果,我有一个苹果,我们交换一下,一人还是一个苹果;你有一个思想,我有一个思想,我们交换一下,一人就有两个思想。 ——肖伯纳

导航

startActivity的理解

假设有两个Activity: QActivity与PActivity

启动QActivity,然后再在QActivity里面通过以下的方式启动PActivity

Intent i = new Intent(this,PActivity.class);

startActivity(i);

//注:没有调用finish()

而如果在PActivity里面按照以下的方式返回QActivity(这里是为了说明需要,故意不调用finish方法来退出PActivity)

Intent i = new Intent(this,QActivity.class);

startActivity(i);

 

这样在程序中是重新创建了一个QActivity,而不是像调用服务那样,如果存在就不重新创建;也不是如果在Activity Stack里面如果存在,

只是重新激活下(onRestart->onStart->onResume)而不是重新创建一个。

 

还是因为Intent里的第一个参数Context(上下文环境)不一样的缘故?

(就算在PActivity里面多次调用上面第2段的代码,还是会创建多个的QActivity对象)

 

 

posted on 2010-08-25 10:40  梦书  阅读(3817)  评论(0编辑  收藏  举报