运行效果图
![](https://img-blog.csdn.net/20160923094455206?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
![](https://img-blog.csdn.net/20160923094548012?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
app1的activity1有两个按钮,一个按钮跳转到Activity2,另外一个按钮跳转到打电话的页面,打电话这个功能不属于app1,我们假设它为app2。
首先默认进入app1的activity1,点击button1后跳转到activity2,再点击activity2的按钮后跳转到activity1,再点击button2跳转到打电话页面,最后依次点返回按钮,大家看Task栈效果。
1. 训练目标
理解Task的含义
主要代码:
- package cn.bzu.taskdemo;
-
- import android.net.Uri;
- import android.os.Bundle;
- import android.app.Activity;
- import android.content.Intent;
- import android.view.Menu;
- import android.view.View;
-
- public class MainActivity extends Activity
- {
-
- @Override
- protected void onCreate(Bundle savedInstanceState)
- {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- }
- public void toSecond(View view){
- Intent intent = new Intent();
- intent.setClass(this, SecondActivity.class);
- startActivity(intent);
- }
- public void dial(View view){
- Intent intent=new Intent();
- intent.setAction(Intent.ACTION_CALL);
- intent.setData(Uri.parse("tel://5556"));
- startActivity(intent);
- }
-
- }
- package cn.bzu.taskdemo;
-
- import android.app.Activity;
- import android.content.Intent;
- import android.os.Bundle;
- import android.view.View;
-
- public class SecondActivity extends Activity
- {
- @Override
- protected void onCreate(Bundle savedInstanceState)
- {
- // TODO Auto-generated method stub
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_second);
- }
- public void toFirst(View view){
- Intent intent=new Intent();
- intent.setClass(this, MainActivity.class);
- startActivity(intent);
- }
- }
Task是一个栈,特点:后进先出