1.Activity介绍
activity是android四大组件中的一员,一个应用程序会有多个松耦合的activity组成。一般一个应用程序第一次启动会呈现被指定的“main”activity。
activity是通过一种activity栈来管理的,除了最上层的activity,其它的activity都会在某种情况,比如内存不足时会被回收。
在AndroidManifest.xml中注册
<manifest ... >
<application ... >
<activity android:name=".ExampleActivity" />
...
</application ... >
...
</manifest >
启动一个activityIntent intent = new Intent(this, SignInActivity.class);
startActivity(intent);
Intent intent = new Intent(this, SigninActivity.class);
startActivityForResult(intent, REQUEST_CODE);
2.Activity生命周期
首先看一下官网上的一表:
这里主要涉及的方法有:
onCreate:一个activity启动调用的第一个方法,主要是做一些界面设置,数据初始化等工作。
onStart:这个方法是activity被转化为active状态是被调用。
onResume:获取焦点的时候被调用。
onPause:转到pause状态的时候被调用,有些重要信息也可以进行保存,因为这个阶段开始,activity会在系统内存不够时被kill掉。
onStop:转到stop的时候被调用。
onDestroy:在activity被销毁后调用,主要释放资源,清理内存。
在官网上有把整个生命周期分为3种阶段:
第一种、整个生命周期:在onCreate和onDestroy之间。在onCreate中设置布局等状态,在onDestroy中释放资源;在onCreate中开启的的线程,在onDestory中停止这个线程
第二种、可见生命周期:在onStart和onStop之间。比如在onStart中注册一个Broadcast,在onStop中注销掉。
第三种、前台生命周期:在onResume和onPause之间。在这个阶段是activity获取焦点和用户进行交互的状态。
3.Activity通讯方式
Intent方式:
Intent intent = new Intent(this, NextActivity.class);
intent.putExtra(name, value);
startActivity(intent);// 启动新的 Activity
sharedPreference方式:
SharedPreferences preferences = getSharedPreferences(name, mode);
Editor editor = preferences.edit();
editor.putString(key, value);
editor.commit();
还有sqlite,文件等方式。