位置: 编程技术 - 正文

Activity生命周期讲解(activity生命周期的方法)

编辑:rootadmin
前言:

推荐整理分享Activity生命周期讲解(activity生命周期的方法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:activity生命周期有几种状态,Activity生命周期会表现出哪几种状态?,Activity生命周期会表现出哪几种状态?,activity生命周期中回调的方法,activity生命周期七种方法,activity生命周期七种方法,activity生命周期有几种状态,activity生命周期有几种状态,内容如对您有帮助,希望把文章链接给更多的朋友!

一直想着写一些Android基础知识分享给大家,但是有时候又觉得怕写不好误导了大家学习Android,思前想后觉得还是去Android官网看看,发现在Android官网上其实就能学习到很多知识,并且最新的知识他都会及时的更新,所以决定按照官网带领大家学习Android知识,在中间会穿插本人在做项目时的一些体会和总结。

应用程序的入口:

所有学习Android的基本上都从学习Activity开始,因为它是Android的大门,相当于Java程序的入口函数main()。当你查看一个Java项目时你肯定想到的是从它的入口函数main()开始,一步一步的深入去看这个项目的逻辑是怎么展开的,查看Android项目也不例外,但是它的入口不是main函数,而是主Activity类。在Activity中有一些特定的方法称为生命周期函数(也叫回调函数),这些函数不需要你去调用它,而是会自动的被Android系统调用,Android系统会根据用户的操作调用这些生命周期函数,比如用户点击了应用图标来启动应用程序,Android系统就会调用应用程序中主Activity的onCreat()方法,用户按返回键则会触发onPause()函数,你所需要做的就是利用这些生命周期函数,把你的逻辑写在恰当的位置。

理解Activity生命周期:

怎么利用生命周期函数?首先是要理解Activity的生命周期。在Android官网上有一张下面的图片,它绘制的就是一个Activity生命周期金字塔。

在上图中每一个生命周期中的状态(Created、Started、Resumed、Paused、Stoped、Destroyed)可以看做是组成金字塔的每一个台阶,这些台阶是通过一些生命周期函数才能到达的。在用户点击应用图标启动应用程序的时候是从金字塔最底层,经过onCreat()、onStart()、onResume()这几个函数一步一步走向金字塔顶峰,这几个函数都是Android系统帮你调用的,不需要你处理,你要做的是在这几个函数中做好程序的初始化工作。当到达金字塔顶部Resumed状态时应用程序获取了最大的前台运行权限,用户才能与应用程序进行交互,比如进行聊天、点击应用程序的其他功能等。当用户离开应用程序的时候Android系统会调用Activity的onPause()、onStop()、onDestroy()方法,一步一步从金字塔顶层退下来,在从顶层退下来的时候也可以从新回到顶层。

理解三个状态:

Activity中的Created、Started、Resumed、Paused、Stoped、Destroyed这七个状态只有三个状态可以静止存在一段时间,其他的状态很快就会过去。这三个状态是:

Resumed状态:

在这个状态下Activity处于前台活动状态,也就是可以和用户进行交互的状态,也叫运行状态。

Paused状态:Activity生命周期讲解(activity生命周期的方法)

在这个状态Activity界面部分被其他Activity遮挡,无法响应用户的所有操作。

Stopped状态:

在这个状态Activity完全被隐藏,对于用户是不可见的状态,应用程序在后台。进入这个状态时,Activity的状态信息要被保留下来。

对于其他状态只是短暂的停留,不如系统调用onCreate()后,它迅速调用onStart(),紧接着onResume()。

生命周期注意事项:

对于Activity的生命周期在实际项目中的怎么应用你需要记住以下几点:

在用户用你的应用程序时,如果有来电或者用户切换到其他应用,你的应用程序不能出现异常退出,比如很严重的崩溃(crash)或者无响应(ANR);在用户不再使用你的应用时,及时释放掉你应用程序占用的系统资源,比如在程序进入后台时要停掉一些不必要的线程;在用户离开你的应用的时候要保存用户当前的状态,再用户再次回到你的应用的时候恢复之前的状态;在进行横竖屏切换的时候要满足上面的第一和第三条规则。

以上是Activity生命周期的基本知识,下一篇文章将会结合代码讲解Activity生命周期函数。如果大家有什么疑问和问题请关注我的微信公众号:coder_online给我反馈。

本文属原创,转载请注明出处,违者必究

关注微信公众平台:程序员互动联盟(coder_online),你可以第一时间获取原创技术文章,和(java/C/C&#;&#;/Android/Windows/Linux)技术大牛做朋友,在线交流编程经验,获取编程基础知识,解决编程问题。程序员互动联盟,开发人员自己的家。

版权声明:本文为博主原创文章,未经博主允许不得转载。

Android数据库高手秘籍:SQLite命令 要想熟练地操作任何一个数据库,最最基本的要求就是要懂SQL语言,这也是每个程序员都应该掌握的技能。虽说SQL博大精深,要想精通确实很难,但最

android 单行gridview横向滑动的实现 android单行gridview横向滑动的实现首先重写下GridViewHorizontalGridView.javapublicclassHorizontalGridViewextendsGridView{publicHorizontalGridView(Contextcontext,AttributeSetattrs){super(co

Android手机界面的各种状态 屏幕黑:会发SCREEN_OFF广播,屏幕黑原因有如下:OFF_BECAUSE_OF_USER:用户按下POWER键,当前是否处于锁屏界面,若是(mShowing)则重置显示界面,否则重新显示

标签: activity生命周期的方法

本文链接地址:https://www.jiuchutong.com/biancheng/378104.html 转载请保留说明!

上一篇:startActivity时报错Calling startActivity() from outside of an Activity conte(startactivity())

下一篇:Android数据库高手秘籍:SQLite命令(安卓端数据库)

  • 企业所得税年度汇算清缴时间
  • 产权转移数据的交易价格和固定资产科目
  • 应税工资怎么计算出来的
  • 差旅费用什么记账凭证
  • 会计做账借贷怎么做
  • 增值税一般纳税人税率是多少?
  • 广州二手房免增值税
  • 通过扣缴义务人和综合申报哪个好
  • 增值税采用
  • 土地增值税清算管理规程
  • 工业企业的三个阶段
  • 采购退货红字发票怎么写
  • 一般纳税人税种认定有几个增值税要怎么申报呀
  • 汇算清缴之后报销去年的票如何分录?
  • 供热企业采暖费收入免征增值税政策解读
  • 投资款怎样缴印花税?
  • 代理进口一般几个点费用
  • 商贸企业可以使用月末一次加权平均
  • 上月税没报,可以开发票吗
  • 企业所得税优惠事项包括哪些?
  • 把十六点改成十五点半起床
  • 旅游业开办费
  • 预缴的税款可以互抵吗
  • 税控设备实际抵减增值税时如何做分录?
  • 商贸公司进货的会计分录
  • 专利年费应该入哪个科目
  • 买免税产品
  • 当月取得的进项必须当月勾选吗
  • 医疗废物处置费是什么意思
  • 税率抵扣计算公式
  • 帮公司垫付的钱怎么要
  • Thinkphp5+PHPExcel实现批量上传表格数据功能
  • 无偿调入固定资产
  • 科罗拉多斯普林斯海拔
  • chrome使用教程
  • 前端跨域的方法
  • 小程序开发定制
  • php操作mysql数据库
  • 货运代理约柜费怎么算
  • 销售收入是不是销售额
  • 小规模纳税人开专票需要交税吗
  • 免税法扣除法抵免法的区别
  • 应付票据是供应商往来吗
  • js中同步如何理解
  • 固定资产怎么确认价值
  • 哪些固定资产是按8年折旧的
  • 企业内部控制的概念
  • 一般计税方法预交增值税
  • 2023年会计继续教育报名入口
  • 企业会计本年利润
  • 六税一费减免
  • 经营费用是指
  • 预付账款和应付账款减少
  • 货款去零头分录
  • 现金日记账要如何做账
  • 技能培训费属于哪个科目
  • 月末库存商品能抵税吗
  • 负数发票怎么开具?
  • 小规模纳税人如何计算增值税
  • bios设置从光驱启动优先,可是启动不了
  • windows7怎么给电脑加密码
  • 程序员用linux可以干什么
  • win10系统安全中心在哪
  • extjs grid设置某列背景颜色和字体颜色的方法
  • 塔防类的网游
  • python中列表删除
  • html文字美化
  • python多线程代码
  • Node.js中的什么模块是用于处理文件和目录的
  • shell判断文件是否存在且大小不为0
  • 教你用纸折一只会跳的小兔子,非常好玩,小朋友都喜欢
  • python django事务transaction源码分析详解
  • window10脚本错误
  • Android调用jni获取mac地址
  • 税务局投诉怎么投诉
  • 东莞市税务局稽查局
  • 投诉10080 48小时都没有回复
  • 2024新车购置税政策
  • 环保税按次申报需要交滞纳金吗
  • 法律服务所与律师事务所区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设