Android 开发学习笔记(二)—— Activity和Intent
1.多个Activity之间的关系
假如一个应用程序有两个Activity,从一个Activity01跳转到另外一个Activity02时,要在第一个Activity中调用 startActivity(Intent intent) 来实现
2.Intent 的基本作用
Intent 是一个对象,包括以下六类基本信息 Component name、Action、Data、Category、Extras、Flags
Component name ––– 指定要启动的下一个Activity 或 Service
Action ––– 指定Activity 要做什么,打电话?还是编辑文字
Data ––– 要传递的数据
Extras ––– 额外的信息,是键值对,另一个Activity 中可以取得Data 和 Extras 的数据
注意:
一个Intent 在两个Activity 之间传递数据,这两个Activity 并不要求是在同一个应用程序下
3.在一个Activity中如何启动另外一个Activity
/*
1.首先声明一个点击事件的响应事件(本例子是import android.view.View中的响应事件)
2.在响应事件中定义Intent对象,并指定跳转前后的Activity
3.最后通过要跳转Activity 中启动startActivity 传递intent 来实现跳转
*/
// 定义OnClick 对象
class MyButtonListener implements OnClickListener{
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
Intent intent = new Intent();
intent.setClass(Activity_01.this, OtherActivity.class);
Activity_01.this.startActivity(intent);
/* // 直接跳转到发送短信的Activity
Uri uri = Uri.parse(“smsto://15201329043”);
Intent intent = new Intent(Intent.ACTION_SENDTO,uri);
Intent.putExtra(“sms_body”,”the sms content”);
Activity_01.this.startActivity(intent);
*/
}
}
// 触发事件
myButton.setOnClickListener(new MyButtonListener());
4.使用Intent在Activity之间传递数据的方法
// 只介绍如何传递额外数据,传递数据
intent.putExtra("paras", "My God!");
// 在另一个Activity 中接受数据
Intent intent = getIntent();
String paras = intent.getStringExtra("paras");