Activity
<activity android:name=".MainActivity"
android:label="task"
android:theme="@style/Theme.Appcompat.Light.NoActionBar">
launchMode启动属性
intent-filter:启动activity
Activity的生命周期
onCreate()->created->onStart()->started->onResume()->Resumed->onPause()->Paused->onStop()->stoped->onDestory()->destoryed
进入activity:create start resume
接电话:pause
退出activity:pause stop destory
跳转和数据的传递
显式跳转和隐式跳转
1.Intent intent = new Intent(AActivity.this, BActivity.class);
startActivity(intent);
2.Intent intent = new Intent();
intent.setClass(AActivity.this, BActivity.class);
startActivity(intent);
3.Intent intent = new Intent();
intent.setClassName(AActivity.this, "com.skypan.helloworld.jump.BActivity");
startActivity(intent);
4.Intent intent = new Intent();
intent.setComponent(new ComponentName(AActivity.this,"com.skypan.helloworld.jump.BActivity" ));
startActivity(intent);
//隐式调用
Intent intent = new Intent();
intent.setAction("com.skypan.test.BActivity");
startActivity(intent);
<activity android:name=".jump.BActivity"
android:label="B">
<intent-filter>
<action android:name="com.skypan.test.BActivity"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
..
activity之间的数据传递
startActivityForResult:启动Activity,结束后返回结果
public void onClick(View v){
Intent intent = new Intent(Activity.this, BActivity.class);
Bundle bundle = new Bundle();
//数据的传递是通过Bundle,intent.putExtras();后台也是new一个bundle
bundle.putString("name","天哥");
bundle.putInt("number",88);
intent.putExtras(bundle);
startActivity(intent);//传递2个数据
}
BActivity:
private TextView mTvTitle;
protected void onCreate(@Nullable Bundle savedInstanceState){
super.onCreate(savedInstanceState);
mTvTitle = (TextView) findById
Bundle bundle = getIntent().getExtras();
String name = bundle.getString("name");
Int number = bundle.getInt("number");
mTvTitle.setText(name+","+number);
}