`
VIP庚
  • 浏览: 223372 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

按下返回键时 返回到上个活动 但当前活动不销毁

 
阅读更多
首先要设置你的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();
分享到:
评论

相关推荐

    Android 销毁当前的Activity

    需要注意的是,让 Android 横竖屏切换时不销毁当前的 Activity,并不意味着我们可以完全忽视屏幕方向的改变。我们仍然需要在 Java 代码中加入配置信息改动的处理代码,以便正确处理屏幕方向的改变。 另外,Activity...

    Android中实现再按一次返回键退出应用程序

    在Android应用开发中,通常我们希望用户在按下返回键时能够退出应用程序,但为了提供更好的用户体验,Android系统并不推荐直接在用户第一次点击返回键时就退出。为了实现“再按一次返回键退出应用程序”的功能,我们...

    Android 屏蔽home,菜单,返回键 解锁,加锁

    // 执行你的逻辑,比如显示一个对话框或者保持当前活动不被销毁 } } } ``` 然后,在你的主活动中注册这个BroadcastReceiver,并在适当的时候(如onCreate或onResume)进行注册: ```java @Override protected ...

    安卓Android源码——返回键退出程序的两种方式.zip

    通常,每个启动的Activity都会被添加到任务栈(Task Stack)中,当用户按下返回键时,系统会默认从栈顶弹出(即销毁)当前Activity。如果希望在某个特定Activity被销毁时结束整个程序,可以在启动这个Activity时设置...

    Android中对手机的返回键,Home键以及多功能切换键的监听

    返回键会使得当前Activity被销毁或暂停,而Home键则会将应用退到后台,前台显示Home屏幕。 1. **返回键监听**: 要监听返回键事件,可以在Activity中重写`onBackPressed()`方法。这个方法会在用户点击返回键时默认...

    安卓开发-返回键退出程序的两种方式.zip

    在安卓应用开发中,用户有时希望点击返回键时能够直接退出整个应用程序,而不仅仅是关闭当前活动(Activity)。本文将详细讲解两种实现这一功能的方法。 ### 方法一:重写onBackPressed()方法 `onBackPressed()`是...

    滑动销毁activity

    在Android开发中,"滑动销毁activity"是一种增强用户体验的设计,它模仿了iOS系统的滑动退出手势,使得用户可以通过从屏幕边缘向内滑动来关闭当前活动(Activity)。这一功能在Android应用中并非默认实现,但通过...

    Android返回键功能的实现方法

    默认情况下,当用户按下设备上的返回键,系统会调用当前Activity的`onBackPressed()`方法,这通常会导致Activity被销毁并返回到前一个Activity。然而,有时我们可能需要自定义返回键的行为,比如在确认对话框出现后...

    Android应用源码之返回键退出程序的两种方式-IT计算机-毕业设计.zip

    在按下返回键时,启动当前Activity的新实例,并清除栈顶到该Activity的所有Activity。这样,当新的Activity启动后,之前的Activity都会被销毁,从而达到退出程序的目的。示例代码如下: ```java @Override public ...

    Android应用源码之返回键退出程序的两种方式.zip

    当我们启动新的Activity时,新的Activity会被压入栈顶,按下返回键会从栈顶取出并销毁Activity。 - 若要实现按返回键退出整个应用,我们需要确保所有Activity都关闭。可以设置一个全局变量,记录Activity的数量,当...

    vue 弹窗时 监听手机返回键关闭弹窗功能(页面不跳转)

    在Vue.js中实现监听手机返回键并在弹窗时关闭弹窗功能而不使页面跳转,是一个面向移动设备用户的友好交互功能。这项功能的实现涉及到Vue的生命周期钩子、浏览器历史记录管理以及事件监听等知识点。 首先,要理解的...

    vue中监听返回键问题

    在使用Vue开发单页面应用(SPA)时,经常会遇到需要监听浏览器返回键的需求。这在用户填写表单,或在不同页面间进行操作时尤为重要。如果直接让浏览器的返回逻辑执行,可能会导致用户数据丢失或者应用状态异常。因此...

    手机浏览器物理返回劫持,自定义点击返回的操作

    在移动互联网领域,用户在浏览网页时经常使用手机的物理返回键进行页面的回退操作。然而,有时候开发者为了特定的交互需求或者安全考虑,可能会选择劫持这一默认行为,即自定义点击返回按钮的操作。这在技术实现上...

    Android中让按钮拥有返回键功能的方法及重写返回键功能

    android自己决定何时该从内存中释放程序,当系统没有可用内存时,就会按照一定的优先级来销毁应用程序。 android手机操作系统有垃圾处理机制,所以也不必担心这个问题,用finish()方法吧。 重写返回键: 代码如下: ...

    返回键退出程序的两种方式.zip安卓程序项目源码资源下载

    如果我们希望在某个特定的Activity上点击返回键退出整个程序,可以在该Activity的`onBackPressed()`方法中添加逻辑: ```java @Override public void onBackPressed() { // 如果当前Activity是栈顶Activity,则...

    Android 再按一次返回键退出程序实现思路

    这种设计通常会在用户首次按下返回键时显示一个提示,如Toast消息,告知用户如果再次按下返回键,程序将会退出。以下将详细介绍如何实现这一功能。 首先,我们需要重写Activity的`onKeyDown`方法。这个方法会在用户...

    qndroid显示时间

    - `onStart()`:Activity变得可见但不一定是前台活动时调用。 - `onResume()`:Activity完全可见并接收用户输入时调用,适合在此时启动定时更新时间的任务。 - `onPause()`:当Activity被其他Activity覆盖或用户...

    按两次回退键退出程序例子.zip

    通常,按下一次回退键会返回上一个活动(Activity),而连续按两次则会退出整个应用程序。这一设计为用户提供了额外的确认步骤,避免了因误操作导致的应用退出。 首先,我们需要理解Android的Activity生命周期。...

    活动生命周期

    按返回键时,栈顶的活动会被销毁并移除,栈底的活动重新回到前台。 理解并合理处理这些生命周期方法对于优化应用性能至关重要。例如,通过在适当的方法中处理数据保存和恢复,可以在设备旋转或其他配置改变时保持...

    安卓开发框架工具类相关-activity生命周期线程优先级异常销毁任务栈.zip

    通过back键,用户可以返回到栈中的前一个Activity,直到任务栈为空,应用退出。了解任务栈的概念有助于设计合理的应用导航流程,例如使用FLAG_ACTIVITY_CLEAR_TOP或FLAG_ACTIVITY_NEW_TASK等Intent标志来控制...

Global site tag (gtag.js) - Google Analytics