一般我们使用Intent 进行activity跳转时我们都知道需要跳转的activity的名字,例如:

Intent intent=new Intent(FirstActivity.this,SecondActitivy.class);

startActivity(intent);

当SecondActitivy.class和FirstActivity不再同一个App的时候,我们就需要用到匿名启动,

匿名启动:

首先需要设置被启动的SecondActivity 的xml配置文件:

FirstActivity 可以利用

来找到 SecondActivity

FirstActivity代码如下:

Intent intent=new Intent();

intent.setAction("toSecondPage");

startActivity(intent);

这样就可以利用ActionName调到非本App的Activity

启动系统activity也是这样实现:

通过一个系统提供的ActionName来跳转到系统的Activity,同时可以附加一些消息;(xml 就是4个简单的按钮)

package testIntent;

import java.net.URL;

import android.app.Activity;

import android.content.Intent;

import android.net.Uri;

import android.os.Bundle;

import android.view.View;

import android.view.View.OnClickListener;

import android.widget.Button;

import com.example.androidtest.R;

public class FirstActivity extends Activity implements OnClickListener{

private Button toWeBButton;

private Button toPicButton;

private Button toMesButton;

private Button toPhoneButton;

@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

setContentView(R.layout.first_activity_main);

toWeBButton=(Button) findViewById(R.id.toWeb);

toPicButton=(Button) findViewById(R.id.toPic);

toMesButton=(Button) findViewById(R.id.toMes);

toPhoneButton=(Button) findViewById(R.id.toPhone);

toWeBButton.setOnClickListener(this);

toPicButton.setOnClickListener(this);

toMesButton.setOnClickListener(this);

toPhoneButton.setOnClickListener(this);

}

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

Intent intent=new Intent();

if(v.equals(toWeBButton)){//跳转到 网页 百度首页

intent.setAction(Intent.ACTION_VIEW);

Uri uri=Uri.parse("https://www.baidu.com");

intent.setData(uri);

}else if(v.equals(toPicButton)){//打开系统图片

intent.setAction(Intent.ACTION_GET_CONTENT);

intent.setType("image/*");//打开所有的图片, 如果需要获取图片就需要写回调函数

}else if(v.equals(toMesButton)){//发送消息

intent.setAction(Intent.ACTION_SEND);

intent.setType("text/plain");

intent.putExtra(Intent.EXTRA_TEXT, "这是我第一次这样发信息");

}else if(v.equals(toPhoneButton)){//拨打电话

intent.setAction(Intent.ACTION_VIEW);

Uri uri=Uri.parse("tel:1839860592");

intent.setData(uri);

}

startActivity(intent);

}

}

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐