<div class="iteye-blog-content-contain" style="font-size: 14px"></div>
显示意图启动
public void explicit(View view){
// 1).先创建意图对象然后制定开启的activity
Intent intent = new Intent();
// 1.使用当前环境
intent.setClass(this, otherActivity.class);
// 2.指定包名和类名
intent.setClassName("com.zls.intentabout", "com.zls.intentabout.otherActivity");
// 3.包名用this代替
intent.setClassName(this, "com.zls.intentabout.otherActivity");
// 2)创建意图的时候直接指定
Intent intent = new Intent(this, otherActivity.class);
startActivity(intent);
}
隐式意图, 通过动作, 数据等设置打开Activity, 程序中并不指定一个类
public void implicit(View view){
/*
打电话
Intent intent = new Intent();
intent.setAction(Intent.ACTION_CALL);
intent.setData(Uri.parse("tel:18600012345"));
startActivity(intent);
*/
/*
打开网页
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(Uri.parse("http://www.baidu.com"));
startActivity(intent);
*/
/*打开图片
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse("file://mnt/sdcard/img.jpg"), "image/*");
startActivity(intent);
*/
/*打开音乐
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse("file://mnt/sdcard/mu.mp3"), "audio/*");
startActivity(intent);
*/
/*打开视频
Intent intent = new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.parse("file://mnt/sdcard/di.mp4"), "video/*");
startActivity(intent);
*/
}
在开启一个新的activity的时候,我们可以往里面传数据
public void sendData(View view)
{
Intent intent = new Intent(this,otherActivity.class);
//1.形式一
intent.putExtra("name", "张三");
intent.putExtra("age", 20);
//2.形式二
Bundle b1 = new Bundle();
b1.putInt("age", 20);
b1.putString("name", "张三");
intent.putExtra("b1", b1);
startActivity(intent); // 开启Activity,不接受返回的数据
// startActivityForResult(intent, 100); // 开启Activity, 并接收返回的数据(在新Activity关闭的时候执行onActivityResult方法)100是请求码
}
/**
* @param requestCode startActivityForResult方法中传入的int值, 用来区别哪里开启的
* @param resultCode setResult方法中传入的int值, 用来区别哪里返回的
* @param data setResult方法中返回的Intent对象
*/
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
String name = data.getStringExtra("name");
int age = data.getIntExtra("age", -1);
super.onActivityResult(requestCode, resultCode, data);
}
otherActivity中代码
public class otherActivity extends Activity {
//第一种
Intent intent = getIntent();
// String name = intent.getStringExtra("name");
// Integer age = intent.getIntExtra("age", -1);
//第二种
Bundle b1 = intent.getBundleExtra("b1");
String name = b1.getString("name");
Integer age = b1.getInt("age");
}
最后记得在配置清单中加入activity
<activity android:name=".otherActivity" android:label="新的Activity" >
<intent-filter >
<action android:name="android.intent.action.CALL" />
<action android:name="android.intent.action.VIEW" />
<data android:scheme="tel" />
<data android:scheme="http" />
<data android:scheme="file" android:mimeType="image/*" />
<data android:scheme="file" android:mimeType="audio/*" />
<data android:scheme="file" android:mimeType="video/*" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
分享到:
相关推荐
主要为大家详细介绍了Android利用Intent启动和关闭Activity的相关操作,感兴趣的小伙伴们可以参考一下
Intent启动service的示例代码,startService,stopService,bindService.unbindService用法的比较
显示Intent和隐式Intent启动Activity的示例
Intent启动Activity样例
Intent启动服务的示例代码Intent启动服务的示例代码 startService,stopService,bindService.unbindService用法的比较
Android中可用Intent启动的常见系统功能说明.pdf 学习资料 复习资料 教学资源
Android中使用Intent启动信息发送功能的方法介绍.pdf 学习资料 复习资料 教学资源
Android中使用Intent启动媒体处理应用的方法介绍.pdf 学习资料 复习资料 教学资源
Android中使用Intent启动手机系统功能的方法介绍.pdf 学习资料 复习资料 教学资源
Android开发教程_015_通过Intent启动一个Activity 标清
Android源代码 演示3个功能: (1)Intent打开另外一个Activity (2)Intent拨电话 (3)Intent在2个Activity间传递数据
我们知道Intent的应用,可以启动别一个Activity,那么是否可以启动别外的一个应用程序呢,答案是可以的
本文实例讲述了Android使用Intent启动其他非系统应用程序的方法。分享给大家供大家参考,具体如下: android应用程序内部通过Intent来实现Activity间的跳转。也知道通过Intent调用系统程序。但若想在应用程序A内开启...
实验七 使用Intent在Activity间传输数据
总结android中Intent的用法,约21种。
以导航到另一个Ability为例,导航的目标Ability可以在其onStart()回调的参数中获得Intent对象如果未同时指定BundleName和Abil