Android Activity使用

来源:互联网 发布:巴宝莉格子侵权淘宝 编辑:程序博客网 时间:2024/04/30 06:11

一、活动概括

活动专注于用户可以做的东西,基本所有活动都会和用户交互,所以活动负责创建可以摆放界面的窗口。

二、活动生命周期

1.完整生命周期:在onCreate( Bundle)和onDestroy()之间经历的就是一个活动的完整生命周期,活动应该在onCreate(Bundle)中初始化相关变量,在onDestroy()中释放剩下的资源。比如有一个线程在后台进行下载,一般在onCreateBundle)中创造启动线程,在onDestroy()中停止线程。

2.可见生存期
活动在 onStart()方法和 onStop()方法之间所经历的,就是可见生存期。在可见生存期内,活动对于用户总是可见的,即便有可能无法和用户进行交互。我们可以通过这两个方法,合理地管理那些对用户可见的资源。比如在onStart()方法中对资源进行加载,而在onStop()方法中对资源进行释放,从而保证处于停止状态的活动不会占用过多内存。
3.前台生存期
活动在 onResume()方法和 onPause()方法之间所经历的,就是前台生存期。在前台生存期内,活动总是处于运行状态的,此时的活动是可以和用户进行相互的,我们平时看到和接触最多的也这个状态下的活动。




三、Activity使用

所以活动都应该重写onCreate()方法,进行加载布局、初始化。活动必须在AndroidManifest.xml中注册才能生效。

1.启动活动

使用Activity类提供的startActivity(Intent)方法 启动一个活动,如果想向下个活动传递数据,Intent中提供了一系列putExtra()方法的重载,可
以把我们想要传递的数据暂存在 Intent 中,启动了另一个活动后,只需要把这些数据再从Intent中取出就可以。

如果启动一个活动后想从这个活动中活动返回结果,这时就需要利用startActivityForResult(Intent  intent,int  ResultCode)来启动活动了,这个方法启动活动是期待在活动销毁时返回一个结果给上一个活动。在活动销毁前调用setResult(int  resultCode,Intent  intent)来设置返回数据。在利用startActivityForResult()启动的活动在销毁之后会回调上一个活动的onActivityResult(int requestCode, int resultCode, Intent data),所以一个在一个活动重写这个方法来活动返回的数据。

2.在Activity中使用Menu

重写onCreateOptionMenu(Menu)方法,加载菜单布局,return true使能,Menu布局必须放在menu文件夹下面

public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}

   重写onOptionsItemSelected(MenuItem item)来处理点击菜单事件


3.保存Activity的临时数据

Activity中提供了一个onSaveInstanceState(Bundle outState)回调方法,这个方法保证一定在Activity被回收是调用,因此可以通过这个方法来临时保存所需数据。

4.Activity的启动模式

一共有五种启动模式,①standard  默认的启动模式  ② singleTop ③singleTask ④singleInstance









0 0
原创粉丝点击