Android之Activity

一、基本概念
activity是android 5大组件之一,主要用于界面的展示,它用户接口程序,提供给用户一个交互式的接口功能。

二、生命周期
在一个Activity正常启动过程中,依次执行onCreate -> onStart -> onResume方法;
在Activity被kill掉的时候方法顺序是onPause -> onStop -> onDestroy,此为一个完整的Lifecycle。
对于中断处理(如电话来了),则是onPause -> onStop,恢复时onStart -> onResume
如果当前应用程序的是一个Theme为Translucent或Dialog 的Activity那么中断就是onPause ,恢复的时候onResume。
onCreate:在这里创建界面,做一些数据的初始化工作;
onStart: 用户可见不可交互;
onResume:用户可交互(在Activity栈系统通过栈的方式管理这些Activity);
onPause:可见但不可交互,系统会停止动画等待并消耗CPU。此时应保存数据,因为程序此时优先级降低,有可能被系统收回;
onStop:变得不可见,被下一个activity覆盖了;
onDestroy:被kill前最后调用的方法,可能执行了finish方法或者是系统为了节省空间将它暂时性的干掉。

三、数据通信
Android 中通过 Intent 对象来进行数据通信。在应用中,可以用两种形式来使用Intent:
直接Intent:
指定了component属性的Intent(调用setComponent(ComponentName)或者setClass(Context, Class)来指定)。通过指定具体的组件类,通知应用启动对应的组件。
间接Intent:
没有指定comonent属性的Intent。通过查找已注册在AndroidManifest.xml中的所有IntentFilter及其中定义的Intent,最终找到匹配的Intent。

四、Activity跳转
无返回结果跳转:
从一个Activity启动另一个Activity,直接startActivity(new Intent(当前Activity.this, 下一Activity.class))
有返回结果跳转:
使用startActivityForResult(Intent intent, int requestCode),requestCode的值是自定义的,用于识别跳转的目标Activity。
跳转的目标Activity所要做的就是返回数据/结果,setResult(int resultCode)只返回结果不带数据,或者setResult(int resultCode, Intent data)两者都返回!
而接收返回的数据/结果的处理函数是onActivityResult(int requestCode, int resultCode, Intent data)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值