您的位置:首页 > 其它

Activity生命周期,启动Activity,以及Activity之间数据的传递

2016-09-17 14:18 537 查看
Activity生命周期,启动Activity,以及Activity之间数据的传递

一、感性认知:

1、理解什么是Activity以及上下文。

2、如果合理的控制Activity。

二、理性认知:

1、Activity的声明周期

a、Activity创建启动:

onCreate

onStart

onResume

b、Activity退出:

onPause

onStop

onDestory

c、Activity完全不可见,完全遮盖:

onPause

onStop

d、Activity从完全遮盖到完全显示:

onRestart

onStart

onResume

e、Activity从完全显示到部分显示,即Activity失去焦点:

onPause

f、Activity从部分显示到完全显示,即重新得到焦点:

onResume

2、启动Activity

a、创建Activity

b、注册该Activity:每个Activity在展示执行的时候,必须在AndroidManifest中注册

c、通过startActivity方法启动该Activity。

d、创建Intent对象,把需要启动的Activity封装到意图对象中,然后传给 startActivity方法。

(PS:Intent intent = new Intent(); intent.setClass(Activity.this, LoginActiity.class);)

3、Intent意图

传:

a、Activity启动必须使用Intent对象

b、Intent中可以包装Bundle对象(其中可能存放数据)

c、Intent对象中直接包装数据

intent.putExtra("CONTENT", "哈哈哈");

取:

a、Intent intent = getIntent();

b、intent.getStringExtra(KEY);

4、Bundle

传:

a、Bundle bundle = new Bundle();

b、bundle.putString("KEY", value);

c、intent.putExtra("BUNDLE_KEY", bundle);

取:

a、Intent intent = getIntent();

b、Bundle bundle = intent.getBundleExtra("KEY");

c、String msg = bundle.getString("KEY");

5、Activity的管理

a、Android自身会有一个Activity的管理栈。

涉及Activity的启动模式。(后续讲解)

b、自定义创建一个Activity的管理栈。

6、Activity数据的回传

启动:

a、startActivityForResult(Intent intent, int requestCode);

回传:

b、setResult(int resultCode, Intent data);

接收:

c、onActivityResult(int requestCode, int resultCode, Intent data);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: