博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
什么是Activity
阅读量:5896 次
发布时间:2019-06-19

本文共 1064 字,大约阅读时间需要 3 分钟。

Activity 的生命周期是被以下的函数控制的。

public class Activity extends ApplicationContext {
      protected void onCreate(Bundle icicle);
      protected void onStart();
      protected void onRestart();
      protected void onResume();
      protected void onFreeze(Bundle outIcicle);
      protected void onPause();
      protected void onStop();
      protected void onDestroy();
}
onCreate(Bundle) 函数是你进行初始化的地方,这个也是执行
setContentView(View)函数的地方,setContentView(View)函数可以传入一个由XML
编制的UI界面,可以使UI和具体实现完全分离。
onPause()函数是处理用户离开当前 Activity 的地方。更重要的是,任何在当前
Activity中的任何改变都要在这个函数中提交。
Activity有四种状态:
       活动状态,当Activity处于Stack(栈)顶时,就是手机当前的现实屏幕,这是 Activity就
处于activity或者运行状态。
       运行但是失去焦点,当Activity还处于运行状态时,但是屏幕是有另外一个Activity
处于文档处于焦点状态,当前的Activity就处于pause。
       停止,当Activity被另一个Activity完全覆盖的时候,就被停止了,其实就是虽然在
运行,但是用户却看不见。
       结束,当Activity处于pause或者stop时,系统可以结束 Activity,回收资源,这
是Activity就是处于结束状态了。
       处于结束状态的是Activity,如果要使用户可见,只要重启才可以。
Activity的响应时间
       当前Activity所在的线程为主线程,它的响应时间为5秒,如果在当前运行的Activity中进行耗时的操作且响应时间起过5秒,那么程序就会报ANR错误。所以,这也是不建议在Activity中写太多复杂代码的原因之一。
       当然,有些代码只能写在Activity中,不然就运行不了(它们不是生命周期方法),比如你想要获得android系统或者硬件一的些信息,就必须在Activity中写出来,如果单独写一个工具类获得不了。

转载地址:http://zjxsx.baihongyu.com/

你可能感兴趣的文章
091、万能的数据收集器 Fluentd (2019-05-15 周三)
查看>>
20条Linux命令面试问答(转载)
查看>>
LeetCode算法题-Maximum Depth of Binary Tree
查看>>
POJ - 3436 ACM Computer Factory(最大流)
查看>>
浅析socket与http (转载)
查看>>
[线程]线程池
查看>>
浏览器内多个标签页之间的通信之storage
查看>>
sha1withRSA算法
查看>>
git分支的创建与合并
查看>>
ibatis.net学习笔记(五) 带条件查询语法
查看>>
C语言第十次博客作业--结构体
查看>>
让简历一发即中三大绝招
查看>>
Vim和操作系统剪贴板交互
查看>>
使用ExposedObject对Asp.net MVC中匿名类型的JsonResult做单元测试
查看>>
ajax省市县联动
查看>>
Cox 教学视频5
查看>>
014-请问你觉得测试项目具体工作是什么?
查看>>
JVM类加载(4)—加载器
查看>>
public/private/protected的具体区别
查看>>
面试宝典——求一个字符串中连续出现次数最多的子串
查看>>