android onpause时动画出错,Android生命周期之onPauseonStop
今天接到一个电话面试,就问了一个问题,说:你详细说一下生命周期中onPause。
这肯定是学习Android的第一课,但是面试官问我这个问题明显是问我深度而不是广度,我只是简单地回答了一句,是可见但不可操作的,我觉得我GG了,赶快上来学习。
当系统调用activity的onPause()时,
虽然从技术角度来讲你的activity是可见的,但是更通常这也预示着用户会离开这个activity,然后你的activity会进入stop状态。
基于这种实际情况,通常你应该在onPause()方法里面做如下事情:
1.停止一切动画效果,或者其他消耗cpu的行为。
2.在离开之前提交未被保存改动,你应该只保存那些用户认为应该保存的数据,比如在邮箱应用中,用户正在向文本输入框中写入文字,那么这种改动 被保存下来才显得合理。
3.释放系统资源,比如广播接受者,传感处理器(gps等),或者其他影响电池消耗的东西,因为在pause状态下用户并不需要他们。
一般来说,你不要在onPause()中保存用户的改动(比如用户正在填写的私人信息的表格),只有当你确信用户希望自己修改的东西被保存的时候
比如刚刚提到的用户在写一封邮件的草稿。另外,在onPause中要避免发生cpu敏感的行为,比如写入数据库,这会影响切换到下一个activity的显示效果。
总之,在onPause中的操作都应该是非常简单的,低性能消耗的,确保在onStop()被调用时,用户向其他界面的切换是迅速流畅的。
android onpause时动画出错,Android生命周期之onPauseonStop相关推荐
- Android四大基本组件介绍与生命周期
Android四大基本组件分别是Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收器. 一:了解四大基本组件 Activity ...
- Android四大组件之——Activity的生命周期(图文详解)
转载请在文章开头处注明本博客网址:http://www.cnblogs.com/JohnTsai 联系方式:JohnTsai.Work@gmail.com [Andro ...
- 【Android】8.0活动的生命周期(一)——理论知识、活动的启动方式
1.0 Android是使用任务(Task)来管理活动的,活动就像栈一样堆放着在一起. 每个活动的生命周期最多可能会有四种状态: 1.1 运行状态 位于栈顶 1.2 暂停状态 不在栈顶但在界面上仍处于 ...
- Android实验二:Activity的生命周期
要求 设计如下界面,包括四个按钮,两个文本框.单击对应按钮可以启动对应activity.假 定Activity A为启动Activity. 部分代码 import androidx.appcompat ...
- Android开发之旅:组件生命周期(二)
引言 应用程序组件有一个生命周期--一开始Android实例化他们响应意图,直到结束实例被销毁.在这期间,他们有时候处于激活状态,有时候处于非激活状态:对于活动,对用户有时候可见,有时候不可见.组件生 ...
- android生命周期home键,Android横竖屏切换, 手机锁屏以及按Home键和返回键时的Activity的生命周期...
用手机做了实验,结果如下: 竖屏切横屏会调用完整的生命周期: 03-09 17:08:35.170: I/MainActivity(14086): MainActivity Paused 03-09 ...
- 重温Android四大组件(一)—Activity的生命周期
前言 四大组件对于Android开发者是老生常谈的知识了,相信每个Android开发者对四大组件都已经很熟悉了.但是四大组件作为Android应用的基础,作为开发者不仅要熟悉而且要烂熟于心. 这里以& ...
- Android学习之管理Activity的生命周期
Activity生命周期 activity第一次启动的时候,它来到系统的前台,开始与用户交互.在此期间,Android系统调用了Activity生命周期中一系列的方法.如果用户执行启动了另一个acti ...
- android 获取活动栈,活动的生命周期系列(1)返回栈
活动的生命周期系列(一)返回栈 生命周期对程序员很重要,特别当我们了解,就可以写出更流畅的程序,更好的来避规性能瓶颈,让我们的APP拥有更好的用户体验.接下来我们来分享一下"返回栈" ...
最新文章
- Python需求增速达174%,AI人才缺口仍超百万!这份来自2017年的实际招聘数据如是说
- 压缩目录Linux常用的几种文件压缩解压方法
- [Codeforces1137D]Cooperative Game
- 数据结构学习笔记(六):二叉树(Binary Tree)
- python requests用法总结
- 大顶堆删除最大值_C++|使用STL算法创建、调整、输出最大堆、最小堆
- get mysql options_mysql命令的选项options
- 钟薛高雪糕最贵一支66元 创始人:成本40 你爱要不要
- 【Java集合的详细研究4】Java中如何遍历Map对象的4种方法
- java打印出日历_java控制台打印本月的日历
- matlab r2014a 序列号,Matlab R2014a 免费版
- SQL语句设置标识种子
- C# 多线程六 事件 AutoResetEvent/ManualResetEvent 的简单理解与运用
- 华为freelace耳机修整详录
- IE下载文件无法弹出下载框
- 微信公众平台订阅号、服务号和企业号三者之间的区别与联系
- 【数模】数据统计中的峰度与偏度
- 文献简读——大肠中胰蛋白酶降解共生菌的鉴定【Identification of trypsin-degrading commensals in the large intestine】
- 卸甲归田——回顾CSP2019
- [XJTU计算机网络安全与管理]——第十三讲 攻击与病毒
热门文章
- 【★】Web精彩实战之智能迷宫
- 99. Recover Binary Search Tree (Tree; DFS)
- NSArray 过滤
- Js跨域请求jquery的jsonp方式
- oracle SQL性能优化
- python语言程序设计西安电子科技大学答案-徐悦甡 | 个人信息 | 西安电子科技大学个人主页...
- python代码写好了怎么运行视频-Python的初学者你现在可以自己“看”到代码的运行了!...
- python中怎么比较两个列表-Python3列表(list)比较操作教程
- python爬虫案例-python爬虫详细解析附案例
- python培训班有用吗-Python培训班哪家好?