问题描述,如题目:

android点击返回键,顺序执行 pause,stop,destory.

以至于想重新进入这个activity的时候还要重新执行onCreate()方法,那么如何解决不再重新执行onCreate()方法呢?

首先,所操作的activity需要在清单文件AndroidManifest.xml中把添加属性android:launchMode="singleInstance

如图,我要操作的是GoUI这个activity

然后,在你需要操作的activity里面重写下面这个方法:

    @Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if (keyCode==KeyEvent.KEYCODE_BACK){
moveTaskToBack(true);
return false;
}
return super.onKeyDown(keyCode, event);
}

监听按键,如果是返回键,则把当前activity添加到后台,而不是惯例似的destory掉。return false与return true的结果是不一样的,前者返回键是回到上一个activity,后者会直接最小化应用,重新进入应用之后首先就会看到你所操作的这个avtivity!

运行之后,实现的效果是:

从activityA进入到activityB,再从B进入到activityC(我操作的是activityC),然后返回B,再返回A。A中有个按钮可以直接到C,点击之后,就会发现C的onCreate方法不会被执行。该activityC只是从stop状态解除,重新运行。

下面是activityC经历的一切:

creat-->start-->resume-->RUNNING-->pause-->stop-->restart-->start-->resume-->RUNNING

不过这么做就会导致如果过你想把这个activity关掉就需要大费周折了。除非是直接KILL你的APP。

话说回来,既然你有本文这个需求,应该来说这个activity也不想关掉把哈哈!

欢迎关注微信公众号“ **IT客**“ ,投稿邮箱 itkeyy@163.com

android点击返回键,如何做到不destory当前activity,只是stop。重新返回该activity的 时候可以直接使用,不需要创建新的activity实例的更多相关文章

  1. ionic中android的返回键

    ionic中android的返回键 在ionic框架中已经注册了几个返回事件,分别是 view sideMenu modal actionSheet popup loading 他们的优先级分别是 v ...

  2. Android 监听返回键退出程序的两种实现

    1.Android 双击返回键退出程序 思路:用户按下返回键时设定一个定时器来监控是否2秒内实现了退出,如果用户没有接着按返回键,则清除第一次按返回键的效果,使程序还原到第一次按下返回键之前的状态.定 ...

  3. Unity3D-实现连续点击两次返回键退出游戏(安卓/IOS)

    Unity3D-连续点击两次返回键退出游戏 本文提供全流程,中文翻译.Chinar坚持将简单的生活方式,带给世人!(拥有更好的阅读体验 -- 高分辨率用户请根据需求调整网页缩放比例) 1 Count ...

  4. 关于iOS导航控制器隐藏和显示会出现返回键失效,导航栏标题动画异常

    最近做的demo  bug出现了,我觉得这个bug出现得很经典所以贴出来给大家看看, bug演示就是:点击返回键失效出现如下gif图演示的内容 为啥会出现如此奇葩的bug,系统的返回键居然失效了,尴尬 ...

  5. 让Fragment监听返回键

    Activity可以很容易的得到物理返回键的监听事件,而Fragment却不能.所以使用到了以下的方法. 首先创建一个抽象类BackHandledFragment,该类有一个抽象方法onBackPre ...

  6. 去掉标题栏/ActionBar后点击menu键时应用崩溃

    MainActivity 继承了 ActionBarActivity后,想要去掉标题栏(ActionBar),在程序中加上requestWindowFeature(Window.FEATURE_NO_ ...

  7. ionic 实现双击返回键退出应用功能

    ionic 实现双击返回键退出应用功能 keywords cordova,ngcordova,phonegap,ionic,双击,返回键,退出 例子 准备Toast插件,提示用,用户体验好点,不是必须 ...

  8. Android studio教程:[6]创建多个Activity

    通常来说,一个android应用程序不止一个Activity(活动),更不止一个界面.于是需要创建多个Activity来满足应用程序的要求,这里我将告诉大家如何添加新的Activity,并实现Acti ...

  9. 关于android app两次点击返回键退出的处理

    现在的android app在开发时,引入了两次点击返回键退出app的设计 为了避免用户误触,这个设计很人性化 中文网上社区有些同学贴了一些实现的例子,我觉得不是很好 代码如下 public bool ...

随机推荐

  1. iOS中 Swift初级入门学习(三)

    // // main.swift // LessonSwift-03 // // Copyright (c) 2015年 韩俊强. All rights reserved. // import Fou ...

  2. tar 压缩和解压缩使用笔记

    tar 压缩和解压缩使用笔记 1 文件 1.1 打包 1.1 压缩 $ tar czf myfile.txt.tar.gz ./myfile.txt 1.2 解压缩 解压缩到目录: $ mkdir o ...

  3. python类定义

    在我的收藏中有一篇特别详细的类讲解 此处部分内容引自:http://blog.sina.com.cn/s/blog_59b6af690101bfem.html class myclass: 'this ...

  4. (NO.00003)iOS游戏简单的机器人投射游戏成形记(七)

    因为到目前为止我都是在iOS模拟器中测试,但即便如此,也觉得按住手臂旋转时,手臂转动起来比较费劲,很难停止在玩家期望的位置上.因为手臂完全通过物理引擎的计算来移动,它有自身的惯性影响,所以很难控制. ...

  5. 认证模式之Spnego模式

    Spnego模式是一种由微软提出的使用GSS-API接口的认证模式,它扩展了Kerberos协议,在了解Spnego协议之前必须先了解Kerberos协议,Kerberos协议主要解决身份认证及通信密 ...

  6. 学习tornado:介绍

    前言 在python里面,有许多web framework.对于我来说,因为很长一段时间都在使用tornado,所以有了一些心得体会.虽然现在我的工作重点已经转向go了,但是我觉得还是有必要记录一下t ...

  7. 深入解析Linux中的fork函数

    1.定义 #include <unistd.h> #include<sys/types.h> pid_t fork( void ); pid_t 是一个宏定义,其实质是int, ...

  8. 网站开发进阶(二十八)初探localStorage

    初探localStorage       注: localStorage经典项目应用案例 HTML5中提供了localStorage对象可以将数据长期保存在客户端,直到人为清除. localStora ...

  9. mysql进阶(四)mysql中select

    mysql中select * for update 注:  FOR UPDATE 仅适用于InnoDB,且必须在事务区块(BEGIN/COMMIT)中才能生效. 作用 锁定该语句所选择到的对象.防止在 ...

  10. FSM之SMC使用总结

    FSM之SMC使用总结 Part1: Smc.jar state machine compiler usage Reference:     http://smc.sourceforge.net/   ...