1.一般活动的创建与结束
//活动创建
Intent intent = new Intent(MainActivity.this,A01Activity.class);
startActivity(intent);
//结束活动
finish();
当一个活动Activity01被创建时,以下内容被自动添加:
- Java类中新建了Activity01
- 布局文件中添加了activity_01.xml
- 在清单文件中注册该活动
2.启动App
2.1电话
String strTel = mainEditText.getText().toString();
Uri uri = Uri.parse("tel:"+strTel);
Intent intent = new Intent(Intent.ACTION_DIAL,uri);
startActivity(intent);
2.2短信
String strTel = mainEditText.getText().toString();
String strSms = messageEditText.getText().toString();
Uri uri = Uri.parse("smsto:"+ strTel);
Intent intent = new Intent(Intent.ACTION_SENDTO,uri);
intent.putExtra("sms_body", strSms);
startActivity(intent);
2.3网页
String strUrl = webEditText.getText().toString();
Uri uri = Uri.parse(strUrl);
Intent intent = new Intent(Intent.ACTION_VIEW,uri);
startActivity(intent);
3.活动间的数据传递
3.1逐条发送到新活动
//数据发送活动
String strTel = mainEditText.getText().toString();
Intent intent = new Intent(MainActivity.this,Activity1.class);
intent.putExtra("Tel",strTel);
startActivity(intent);
//数据接收活动
Intent intent = getIntent();
String strTel = intent.getStringExtra("Tel");
3.2打包发送到新活动
//数据发送活动
Intent intent = new Intent(MainActivity.this,Activity1.class);
Bundle bundle = new Bundle();
bundle.putString("Father","180");
bundle.putString("Mather","165");
intent.putExtras(bundle);
startActivity(intent);
//数据接收活动
Intent intent = getIntent();
Bundle bundle = intent.getExtras();
fatherHeightText.setText(bundle.getString("Father"));
motherHeightText.setText(bundle.getString("Mather"));
3.3数据返回
//活动1--发送数据
Intent intent = new Intent(MainActivity.this,DataInputActivate.class);
Bundle bundle = new Bundle();
bundle.putString("Father","180");
bundle.putString("Mother","165");
intent.putExtras(bundle);
startActivityForResult(intent,1);
//活动2--获取前一个Activity发送过来的初始数据
Intent intent = getIntent();
Bundle bundle = intent.getExtras();
etFather.setText(bundle.getString("Father"));
etMother.setText(bundle.getString("Mother"));
//活动2--回传
Intent intent1 = new Intent();
intent1.putExtra("Boy",intBoy);
intent1.putExtra("Girl",intGirl);
setResult(10,intent1);
finish();
//活动1--获取结果事件
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data)
{
super.onActivityResult(requestCode, resultCode, data);
if(requestCode==1)
{
if(resultCode==10){
tvMsg.setText("男孩:" + String.valueOf(data.getIntExtra("Boy",0)) + " 女孩:" + String.valueOf(data.getIntExtra("Girl",0)) );
}
}
}
4.Activity的生命周期
下面是简要说明,事件的详细对比请参考深入理解Activity的生命周期
###含义
一个对象(Activity)从创建到销毁的整个过程。
###与生命周期有关的事件及执行的先后顺序
(1)onCreate
首次创建 Activity 时调用,在该方法中,执行基本应用启动逻辑,例如声明界面、定义成员变量,以及配置某些界面。
Activity在后台创建时调用。
(2)onStart
Activity变为可视时调用此回调,但此时并未在前台,不能进行交互。
Activity由后台到前台时调用。
(3)onResume
当Activity处于栈顶,处于正在运行状态,可以与用户进行交互的时候,调用onResume方法。
Activity在前台可以进行交互时调用。
(4)onPause
当Activity已经失去焦点,但依旧可视时调用onPause方法,此时Activity无法与用户进行交互。一般情况下onStop方法会紧接着被回调。
Activity在前台不可进行交互时调用。
(5)onStop
当Activity从可视变为不可视的时候,调用onStop方法。
Activity由前台到后台时调用。
(6)onRestart
在Activity被重新启动时调用,在Activity第一次被创建的时候不会调用。
Activity再次由后台到前台时调用。
(7)onDestroy
在Activity被销毁前调用。
Activity在后台销毁时调用。