Android中Activity的启动模式
在content_main.xml中
<TextView
android:id="@+id/tv" //添加一个ID
android:text="Hello World!"
/>
在MainActivity.java中
public class MainActivity extends AppCompatActivity {
private TextView tv;//创建一个TextView
在MainActivity.java中
tv= (TextView) findViewById(R.id.tv);//强制类型转换
tv.setText(String.format("TaskID:%d\nCurren Activity id:%s",getTaskId(),toString()));//让TextView呈现一些信息,format查看任务ID,传进来一个getTaskId,再传进来一个当前的activity的id(实例的ID)%s
运行!
<LinearLayout //把布局设置为LinearLayout
android:orientation="vertical" //布局走向为vertical
>
<Button //添加一个按钮
android:textAllCaps="false" //字母是否大写
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="启动MainActivity"
android:id="@+id/btnSatrtSelf" />//就是自己启动自己
</LinearLayout>
在MainActivity.java中
findViewById(R.id.btnSatrtSelf).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(MainActivity.this,MainActivity.class));
}
});
运行
关键字:android 任务栈及启动模式
在启动的多个任务都放在同一个栈里
顺序为先入后出
按退后键就呈现上一个activity的实例
这样就支持后退键导航,现实了安卓跳转的机制
标准启动模式:在AndroidManifest.xml中
<activity
android:name=".MainActivity"
android:label="@string/app_name"
android:launchMode="standard" //默认是standard没有特意声明也是standard模式
android:theme="@style/AppTheme.NoActionBar" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
标签:安卓开发