当前位置: 代码迷 >> Android >> android Activity 之间的跳转解决方法
  详细解决方案

android Activity 之间的跳转解决方法

热度:25   发布时间:2016-05-01 21:27:26.0
android Activity 之间的跳转

我从 MainHallActivity 中通过:
Intent intent_start_trading = new Intent(MainHallActivity.this,lyyp.study.RSMS.TradingActivity.class);
startActivity(intent_start_trading);

创建了一个TradingActivity的窗口显示,之后我又想跳回到原先的那个MainHallActivity ,于是:

Intent intent_return_MainHall = new Intent(TradingActivity.this,lyyp.study.RSMS.MainHallActivity.class);
startActivity(intent_return_MainHall);


这样做的话,我有一个疑问:通过startActivity 来发送Intent 命令实现跳转, 是不是 会创建一个新的MainActivity,而不是跳转到已有的(没有销毁的)那个MainActivity !!!!!!!如果是这样的话,怎么样才能不重复创建 MainActivity !!!


求帮助啊!!!!!!

------解决方案--------------------
你在跳转到第二个Activity的时候原来的那个本来就是没有销毁的。。。你跳回去,直接把新的Activity销毁掉,他自己就回去了,用finish();
------解决方案--------------------
探讨
你在跳转到第二个Activity的时候原来的那个本来就是没有销毁的。。。你跳回去,直接把新的Activity销毁掉,他自己就回去了,用finish();

------解决方案--------------------
把Activity-B销毁,就回到Activity-A
------解决方案--------------------
探讨
引用:

你在跳转到第二个Activity的时候原来的那个本来就是没有销毁的。。。你跳回去,直接把新的Activity销毁掉,他自己就回去了,用finish();


我就是不想销毁原来的那个activity(activity-A) ,也是想从第二个activity(activity-B) 跳回到原来的那个activity去。为了实现跳转,我用了startactivity……

------解决方案--------------------
那要看下你的MainHallActivity的启动方式了,在AndroidMenifast.xml里,看下你的MainHallActivity的android:lauchmode 设定了什么样的值;
Activity的启动方式有4种,standard(默认), singleTop, singleTask和 singleInstance;可以网上查下他们的区别;
设置singleTask应该可以达到你的要求..
------解决方案--------------------
你可以在每个activity的每个生命周期都Log一下,然后就知道了
------解决方案--------------------
建议楼主去看看Activity的四种加载模式,包括对应的intent的四种启动模式,理解acitvity栈中的出入的细节
  相关解决方案