activity生命周期activity 生命周期函数有哪些

activity生命周期  时间:2021-08-11  阅读:()

如何理解android activity生命周期

一个Android应用程序在运行时,对于底层的Linux Kernel而言都是一个单独的进程,但是对于Android系统而言,因为局限于手机画面的大小与使用的考虑,不能把每一个运行中的应用程序窗口都显示出来。

所以通常手机系统的界面一次仅显示一个应用程序窗口,Android使用了Activity的概念来表示界面。

运行中的应用程序分为五大类,分别是: 前景模式:foreground process 可见模式:visible process 背景模式:background process 空白模式:empty process 服务模式:service process 除了最后一个,貌似service process是Service的事情了。

其他都与Activity相关。

Android系统会判断应用程序Activity是属于哪一个类,给予不同的Activity生命周期。

Activity的生命周期也是它所在进程的生命周期。

activity生命周期中不一定被调用的是

onCreate():进行布局的初始化,当需要用到数据库时对数据进行绑定等操作, onStart():当activity处于可见之前调用onStart方法 onResume():当程序呈现在我们面前,并且能够与使用者进行交互 ():当activity不可见时调用 onRestart():当activity被执行方法后,如果activity还行继续运行,就会执行onRestart方法 onPause():当现在的activity被其他的activity覆盖时,此时被覆盖的activity执行onPause方法,onPause()方法中由于我们的activity被其他activity覆盖,因此我们需要保存被覆盖的activity的数据,当程序再次运行时这些信息不会丢失。

并且在onPause()中不能执行耗时的方法,如下载文件等,在onPause()方法中运行的程序一定很快,这样其他的activity才能尽快展现在我们面前。

onDestory():当activity不需要时调用,用于释放资源 从图中可以看的出来,一个Activity被创建后,就会调用3个方法,onCreate()、onStrart()、onResume()。

那么这三个方法何时被调用,用来干嘛呢? onCreate()方法,当一个Activity第一次被创建时首先被执行。

此方法中,设置一些静态的的配置。

例如加载布局文件设置应用标题,为按钮添加监听器等…… onStrart()方法,当一个Activity界面可见的时候执行。

即,当用户可以看到应用界面的时候执行该方法。

onResume()方法,当我们的Activity获得用户焦点的时候执行。

即,当前Activity可操作的时候,界面按钮可点可使用。

onPause()方法,如果在执行一个 Activity的时候,有另外一个Activity再被建立的时候,首先调用第一个Activity的onPause()方法。

例如当我们在玩游戏的时 候,突然来电话了,电话应用的Activity被建立。

此时需要先执行游戏Activity的onPause()方法。

用来存储游戏的数据和当前状态。

简 单的说,如果当前应用被迫停止,去执行其它Activity,onPause()方法被调用。

()方法,当前的Activity被迫停止,且新的Activity把原来的Activity完全遮挡住了,会调用第一个Activity的()方法。

onRestart()方法,当接完电话了,需要返回继续游戏,用来执行第一个Activity的onRestart()方法。

因为第一个Activity已经被建立,无需在创建。

此方法用来释放onPause()方法存储的临时数据。

onDestrory()方法,返回到了游戏界面的Activity,打电话的Activity被销毁了,执行onDestrory()方法。

什么样的activity会被android系统杀死呢? 程序十分的费资源而此时系统又急需要资源,此时这个activity就会被杀死掉。

那么如果activity在()时被杀死了,那么就不会执行onDestory()方法了,类似在onPause()时被杀死,()和onDestory()也都不会被执行了。

当需要保存用户数据时我们应该在onPause()中进行保存。

通常情况下,onCreate()、onStart()、onRestart()、onResume()不会被系统杀死,但是如果其中执行的程序太耗时的话还是会被系统杀死。

activity 生命周期函数有哪些

如果是当前Activity弹出的dialog则不会执行Activity任何生命周期中的方法,只有其它Activity弹出了Dialog或者拦住了当前的Activity才会执行onPause() 以下为Activity的生命周期图 关于Activity的生命周期的解释: 启动Activity:系统会先调用onCre

无忧云:洛阳BGP云服务器低至38.4元/月起;雅安高防云服务器/高防物理机优惠

无忧云怎么样?无忧云,无忧云是一家成立于2017年的老牌商家旗下的服务器销售品牌,现由深圳市云上无忧网络科技有限公司运营,是正规持证IDC/ISP/IRCS商家,主要销售国内、中国香港、国外服务器产品,线路有腾讯云国外线路、自营香港CN2线路等,都是中国大陆直连线路,非常适合免备案建站业务需求和各种负载较高的项目,同时国内服务器也有多个BGP以及高防节点。一、无忧云官网点击此处进入无忧云官方网站二...

Virmach($7.2/年)特价机器发放

在八月份的时候有分享到 Virmach 暑期的促销活动有低至年付12美元的便宜VPS主机,这不开学季商家又发布五款年付VPS主机方案,而且是有可以选择七个数据中心。如果我们有需要低价年付便宜VPS主机的可以选择,且最低年付7.2美元(这款目前已经缺货)。这里需要注意的,这次发布的几款便宜年付方案,会在2021年9月30日或者2022年4月39日,分两个时间段会将INTEL CPU迁移至AMD CP...

数脉科技:香港服务器低至350元/月;阿里云CN2+BGP线路,带宽10M30M50M100M

数脉科技(shuhost)8月促销:香港独立服务器,自营BGP、CN2+BGP、阿里云线路,新客立减400港币/月,老用户按照优惠码减免!香港服务器带宽可选10Mbps、30Mbps、50Mbps、100Mbps带宽,支持中文本Windows、Linux等系统。数脉香港特价阿里云10MbpsCN2,e3-1230v2,16G内存,1T HDD 或 240G SSD,10Mbps带宽,IPv41个,...

activity生命周期为你推荐
php开发工具1. 常用PHP 代码开发工具有哪些?免费erp如何有效的去使用一款免费的ERPblastp如何查找一个基因在毛果杨中的CDS、蛋白质和基因组序列?qq实名注册qq实名认证exe文件打不开exe文件怎么打不开了?电视蚂蚁电视蚂蚁是不是不能用了?我在国外该怎样看奥运?横幅广告如何在应用中添加Admob横幅广告局域网ip扫描工具安卓有没有可以像电脑那样扫描局域网IP的软件?色温图数码相机上面色温小图标的详细作用rs485协议485总线上modbus通信协议?
重庆域名注册 企业主机 host1plus bluehost 美国便宜货网站 云主机51web 个人免费空间 好看qq空间 智能骨干网 cpanel空间 七夕促销 网站木马检测工具 流量计费 免费cdn 美国独立日 空间首页登陆 空间登入 linode支付宝 国外的代理服务器 cdn网站加速 更多