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

一键去除宝塔面板各种计算题与延时等待

现在宝塔面板真的是越来越过分了,删除文件、删除数据库、删除站点等操作都需要做计算题!我今天升级到7.7版本,发现删除数据库竟然还加了几秒的延时等待,也无法跳过!宝塔的老板该不会是小学数学老师吧,那么喜欢让我们做计算题!因此我写了个js用于去除各种计算题以及延时等待,同时还去除了软件列表页面的bt企业版广告。只需要执行以下命令即可一键完成!复制以下命令在SSH界面执行:Layout_file="/w...

spinservers:圣何塞物理机7.5折,$111/月,2*e5-2630Lv3/64G内存/2T SSD/10Gbps带宽

spinservers美国圣何塞机房的独立服务器补货120台,默认接入10Gbps带宽,给你超高配置,这价格目前来看好像真的是无敌手,而且可以做到下单后30分钟内交货,都是预先部署好了的。每一台机器用户都可以在后台自行安装、重装、重启、关机操作,无需人工参与! 官方网站:https://www.spinservers.com 比特币、信用卡、PayPal、支付宝、webmoney、Payssi...

TmhHost 全场八折优惠且充值返10% 多款CN2线路

TmhHost 商家是一家成立于2019年的国人主机品牌。目前主营的是美国VPS以及美国、香港、韩国、菲律宾的独立服务器等,其中VPS业务涵盖香港CN2、香港NTT、美国CN2回程高防、美国CN2 GIA、日本软银、韩国cn2等,均为亚太中国直连优质线路,TmhHost提供全中文界面,支持支付宝付款。 TmhHost黑五优惠活动发布了,全场云服务器、独立服务器提供8折,另有充值返现、特价服务器促销...

activity生命周期为你推荐
笛卡尔乘积离散数学的集合问题。。 第一个笛卡尔的乘积:A={1,2},B={a,b},那么AXB^2是什么js代码格式化js怎么得到一个格式化的日期ie9下载我的电脑是ie11怎么装ie9seasonalholiday 和weekend seasonal activities 有什么区别word打字后面的字消失Word输入一个字,后面就会消失一个字,该怎么办中国银行卡号我中国银行卡号前五位数是多少exe文件打不开所有exe文件不能打开cs躲猫猫cs躲猫猫的游戏叫什么密码设置怎样登录怎样设置密码电子听诊器听诊器有哪些用途的知识
网通服务器租用 justhost php主机 20g硬盘 xfce 云图标 免费ddos防火墙 全能主机 admit的用法 asp免费空间申请 metalink 如何安装服务器系统 超级服务器 腾讯云平台 cdn加速技术 godaddy中文 windowsserverr2 asp介绍 e-mail godaddy域名 更多