按下返回键时 返回到上个活动 但当前活动不销毁
2015-11-29 02:36
204 查看
首先要设置你的activityA为singleInstance。
//也可以override onBackPressed()
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
moveTaskToBack(true);
return true;
}
return super.onKeyDown(keyCode, event);
}
singleInstance :因为它会启用一个新的栈结构,将acitvityA放置于这个新的栈结构中,并保证不再有其他Activity实例进入。
moveTaskToBack:这个方法不会改变task中的activity中的顺序,效果基本等同于home键 相当于返回上一个栈所在的活动
由于 两个活动处于不同的栈 所以关闭时直接结束进程不能关闭activityA的活动 所以必须在activityB 中手动结束activityA:
1、首先在ActivityA中定义一个静态的全局变量
static Activity ActivityA;
2、在ActivityA中的onCreate方法中给ActivityA赋值
ActivityA = this;
3、在ActivityB中,需要结束ActivityA时调用
ActivityA a = new ActivityA();
a.ActivityA.finish();
//也可以override onBackPressed()
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode == KeyEvent.KEYCODE_BACK) {
moveTaskToBack(true);
return true;
}
return super.onKeyDown(keyCode, event);
}
singleInstance :因为它会启用一个新的栈结构,将acitvityA放置于这个新的栈结构中,并保证不再有其他Activity实例进入。
moveTaskToBack:这个方法不会改变task中的activity中的顺序,效果基本等同于home键 相当于返回上一个栈所在的活动
由于 两个活动处于不同的栈 所以关闭时直接结束进程不能关闭activityA的活动 所以必须在activityB 中手动结束activityA:
1、首先在ActivityA中定义一个静态的全局变量
static Activity ActivityA;
2、在ActivityA中的onCreate方法中给ActivityA赋值
ActivityA = this;
3、在ActivityB中,需要结束ActivityA时调用
ActivityA a = new ActivityA();
a.ActivityA.finish();
相关文章推荐
- android 如何点击通知栏中的前台服务,返回当前正在进行的活动
- 在当前活动返回上一个活动详解
- 按返回键时不销毁当前activity
- Android 左滑 返回上一个activity(销毁当前activity)
- DBCC大全集之(适用版本MS SQLServer 2008 R2)----DBCC USEROPTIONS返回当前连接的活动(设置)的 SET 选项
- android 实现点击返回键返回主界面当前界面不销毁
- Android 按返回键不销毁当前Activity
- 按返回键时不销毁当前activity
- android返回键不销毁活动
- Android构建前台服务,以及PendingIntent返回到当前活动的解决办法
- 在Android中销毁当前Fragment界面。
- ajax 获取当前 html输入 已经返回后台php处理文件
- IOS 在当前日期时间加上 某个时间段(传负数即返回当前时间之前x月x日的时间)
- MFC构建中,任意程序位置,获取当前活动视图、文档类
- Android按返回键退出程序但不销毁,程序后台运行,同QQ退出处理方式
- Android Intent返回数据给上一个活动
- error:正被停用的激活上下文对于当前执行线程来说不是活动的。
- 返回当前写入的ID值 SCOPE_IDENTITY、IDENT_CURRENT 和 @@IDENTITY
- android 判断当前应用是否处于活动状态
- js 点击按钮弹出另一页,选择值后,返回到当前页(asp.net实例)