安卓应用开发之activity

Activity是Android组件中最基本也是最为常见用的四大组件(Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收器)之一 [1]  
Activity是一个应用程序组件,提供一个屏幕,用户可以用来交互为了完成某项任务。
Activity中所有操作都与用户密切相关,是一个负责与用户交互的组件,可以通过setContentView(view)来显示指定控件。
在一个android应用中,一个Activity通常就是一个单独的屏幕,它上面可以显示一些控件也可以监听并处理用户的事件做出响应。Activity之间通过Intent进行通信。

   Android有三个基础组件Activity,Service和BroadcastReceiver,他们都是依赖Intent来启动。本文介绍的是Activity的生命周期以及针对Activity的Intent使用。

        之前的例子一直都是使用Activity,在一个Layout XML与一个Activity捆绑的情况下可以视为一个Form,多个Layout XML与一个Activity捆绑的话那就是个Application本身了。Intent可以分为显式Intent和隐式Intent:显式Intent用于启动明确的目标组件(前面所说的三大组件),同一个Application内的多个Activity调用也是显式Intent;隐式Intent就是调用没有明确的目标组件,可以是系统也可以是第三方程序。隐式Intent一般用于调用系统组件功能,相关例程都是网络上很容易找到的(调用某些系统组件的时候要申请权限)。


 Intent提供了一种通用的消息系统,相当于消息或事件,它允许在你的应用组件如Activity与其它的应用组件间传递Intent来执行动作和产生事件。

  在sendMessage方法内加入

Intent intent = new Intent(this, DisplayMessageActivity.class);

意图的构造函数中第一参数this是 content, activity是Context子类。

第二参数就是需要处理事件的消费者类名称。

一个意图可以携带 key-value形式的数据集合,称为extras,为了能从extras中查询数据,规定一个键。

public final static String EXTRA_MESSAGE = "com.example.myfirstapp.MESSAGE";
activity里面还有个很重要的概念叫生命周期,也就是说activity是有“生命”的。
查看帮助文档:学习activity我个人觉得查看帮助文档比较快,文档里也有比较多的图用于理解生命周期。

  
  
  1. 编写验证代码:为验证Activity生命周期的过程,我们可以在一个helloWorld的简单工程里面生产默认Activity中重写七个方法,在方法中加入打印输出到LogCat或者输出toast消息,这样我们就可以知道那个方法被执行了。

    安卓应用开发之编程理解Activity生命周期
  2. 运行程序:图中是程序启动的时候LogCat扑捉到的日志,可见三个方法被调用了,和文档了给出的图例说明一致。

    安卓应用开发之编程理解Activity生命周期
  3. 按下模拟器电源键后解锁(锁屏和解锁操作):按下电源键后,被调用了一个方法,活动进入暂停状态,那么要回到运行状态,就要用调一个方法返回。运行状态和暂停状态之间的循环也叫前台生命周期。主要,在系统资源极度不知的情况下,系统会杀死这个活动,释放这个活动占用的资源。

    安卓应用开发之编程理解Activity生命周期
    安卓应用开发之编程理解Activity生命周期
  4. 按下模拟器home键后重新启动程序:按下home键,活动进入停止状态,后台的活动完全失去显示界面,要回到运行状态,要通过调用三个方法返回。运行状态和停止状态之间的转换也叫活动的可视生命周期。注意,暂停状态的活动资源还是占用着,在系统内存不足的情况下,系统会杀死这个活动,释放这个活动占用的资源,而且会首先考虑杀死暂停状态的活动,才会考虑杀死暂停状态的活动。

    安卓应用开发之编程理解Activity生命周期
    安卓应用开发之编程理解Activity生命周期
  5. 按下模拟器返回键后重新启动程序:按下模拟器返回键后程序结束后,活动自然也结束了,这是正常的退出,活动状态下进入死亡状态会调用三个方法,必须经过暂停、停止状态,释放系统资源,才会进入死亡状态。


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值