Activity之间的隐士跳转
/**
* 方法一:在构造函数中指定
*/
/*Intent intent=new Intent(this,TwoActivity.class);
startActivity(intent);*/
/**
* 方法二:用 setClass 方法
*/
/*Intent intent=new Intent();
intent.setClass(this, TwoActivity.class);
startActivity(intent);*/
/**
* 方法三:用 setClassName 方法(第一个参数是上下文,第二个参数是要跳转的Activity的包名)
*/
/*Intent intent=new Intent();
intent.setClassName(this, "com.example.yinshitiaozhuan.TwoActivity");
startActivity(intent);*/
/**
* 方法四:用 setComponent 方法
*/
/*Intent intent=new Intent();
//设置组件//setComponent方法的参数:ComponentName
intent.setComponent(new ComponentName(this, TwoActivity.class));
startActivity(intent);*/
/**
* 方法五:用 setComponent 方法
*/
/*Intent intent=new Intent();
//设置组件//setComponent方法的参数:ComponentName
intent.setComponent(new ComponentName(this, "com.example.yinshitiaozhuan.TwoActivity"));
startActivity(intent);*/
//-------------------------注:下面的隐士跳转需要在清单文件中注册---------------------------------------
清单文件中:
<activity
android:name="com.example.yinshitiaozhuan.TwoActivity"
android:label="@string/title_activity_two">
<intent-filter>
<action android:name="com.example.yinshitiaozhuan.TwoActivity"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
//--------------------------------------------------------------------------------
/**
* 方法6:隐士跳转
*/
//创建一个隐式的 Intent 对象:Action 动作
/*Intent intent=new Intent();
//设置 Intent 的动作
intent.setAction("com.example.yinshitiaozhuan.TwoActivity");
startActivity(intent);*/
/**
* 方法7://设置壁纸
*/
/*Intent intent=new Intent(Intent.ACTION_SET_WALLPAPER);
startActivity(Intent.createChooser(intent, "设置壁纸"));*/
/**
* 方法8: //调用搜索
*/
/*Intent intent=new Intent();
intent.setAction(Intent.ACTION_WEB_SEARCH);
startActivity(intent);*/
/**
* 方法9: //卸载APK
*/
Uri uri = Uri.fromParts("package", "com.example.yinshitiaozhuan", null);
Intent intent = new Intent(Intent.ACTION_DELETE, uri);
startActivity(intent);
//------------一下是我学习的博客---------------------------------
http://blog.sina.com.cn/s/blog_5d2e69770102v0ra.html
//---------------------------------------------------------
显式 Intent 调用
1 //创建一个显式的 Intent 对象(方法一:在构造函数中指定)
2 Intent intent = new Intent(Intent_Demo1.this, Intent_Demo1_Result1.class);
3
4 Bundle bundle = new Bundle();
5 bundle.putString("id", strID);
6 intent.putExtras(bundle);
7
8 intent.putExtra("name", "bbb");
9 intent.putExtra("userInfo", new UserInfo(1, "name"));
10 startActivity(intent);
11
12 //创建一个显式的 Intent 对象(方法二:用 setClass 方法)
13 Intent intent = new Intent();
14 Bundle bundle = new Bundle();
15 bundle.putString("id", strID);
16 intent.setClass(Intent_Demo1.this, Intent_Demo1_Result1.class);
17 intent.putExtras(bundle);
18 startActivity(intent);
19
20 //创建一个显式的 Intent 对象(方法三:用 setClass 方法)
21 Intent intent = new Intent();
22 Bundle bundle = new Bundle();
23 bundle.putString("id", strID);
24 intent.setClassName(Intent_Demo1.this, "com.great.activity_intent.Intent_Demo1_Result1");
25 intent.putExtras(bundle);
26 startActivity(intent);
27
28 //创建一个显式的 Intent 对象(方法四:用 setComponent 方法)
29 Intent intent = new Intent();
30 Bundle bundle = new Bundle();
31 bundle.putString("id", strID);
32 //setComponent方法的参数:ComponentName
33 intent.setComponent(new ComponentName(Intent_Demo1.this, Intent_Demo1_Result1.class));
34 intent.putExtras(bundle);
35 startActivity(intent);
Intent隐式跳转 Action
1 //创建一个隐式的 Intent 对象:Action 动作
2
7 Intent intent = new Intent();
8 //设置 Intent 的动作
9 intent.setAction("com.great.activity_intent.Intent_Demo1_Result3");
10 Bundle bundle = new Bundle();
11 bundle.putString("id", strID);
12 intent.putExtras(bundle);
13 startActivity(intent);
AndroidManifest.xml
1 < activity android:name="Intent_Demo1_Result3"
2 android:label="Intent_Demo1_Result3">
3 < intent-filter>
4 < action android:name="com.great.activity_intent.Intent_Demo1_Result3" />
5 < category android:name="android.intent.category.DEFAULT" />
6 < /intent-filter>
7 < /activity>
Category 类别
1 //创建一个隐式的 Intent 对象:Category 类别
2 Intent intent = new Intent();
3 intent.setAction("com.great.activity_intent.Intent_Demo1_Result33");
4
8 intent.addCategory(Intent.CATEGORY_INFO);
9 intent.addCategory(Intent.CATEGORY_DEFAULT);
10 Bundle bundle = new Bundle();
11 bundle.putString("id", strID);
12 intent.putExtras(bundle);
13 startActivity(intent);
AndroidManifest.xml
< activity android:name="Intent_Demo1_Result2"
android:label="Intent_Demo1_Result2">
< intent-filter>
< category android:name="android.intent.category.INFO" />
< category android:name="android.intent.category.BROWSABLE" />
< category android:name="android.intent.category.DEFAULT" />
< /intent-filter>
< /activity>
Date 数据 跳转
1 //创建一个隐式的 Intent 对象,方法四:Date 数据
2 Intent intent = new Intent();
3 Uri uri = Uri.parse("http://www.great.org:8080/folder/subfolder/etc/abc.pdf");
4
5 //注:setData、setDataAndType、setType 这三种方法只能单独使用,不可共用
6 //要么单独以 setData 方法设置 URI
7 //intent.setData(uri);
8 //要么单独以 setDataAndType 方法设置 URI 及 mime type
9 intent.setDataAndType(uri, "text/plain");
10 //要么单独以 setDataAndType 方法设置 Type
11 //intent.setType("text/plain");
12
13
17 Bundle bundle = new Bundle();
18 bundle.putString("id", strID);
19 intent.putExtras(bundle);
20 startActivity(intent);
AndroidManifest.xml
1 < activity android:name="Intent_Demo1_Result2"
2 android:label="Intent_Demo1_Result2">
3 < intent-filter>
4 < category android:name="android.intent.category.DEFAULT" />
5 < data
6 android:scheme="http"
7 android:host="www.great.org"
8 android:port="8080"
9 android:pathPattern=".*pdf"
10 android:mimeType="text/plain"/>
11 < /intent-filter>
12 < /activity>
13
调用系统的的组件
//web浏览器
Uri uri= Uri.parse("http://www.baidu.com:8080/image/a.jpg");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
//地图(要在 Android 手机上才能测试)
Uri uri = Uri.parse("geo:38.899533,-77.036476");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
//路径规划
Uri uri = Uri.parse("http://maps.google.com/maps?f=d&saddr=startLat startLng&daddr=endLat endLng&hl=en");
Intent it = new Intent(Intent.ACTION_VIEW, uri);
startActivity(it);
//拨打电话-调用拨号程序
Uri uri = Uri.parse("tel:15980665805");
Intent intent = new Intent(Intent.ACTION_DIAL, uri);
startActivity(intent);
//拨打电话-直接拨打电话
//要使用这个必须在配置文件中加入< uses-permission android:name="android.permission.CALL_PHONE"/>
Uri uri = Uri.parse("tel:15980665805");
Intent intent = new Intent(Intent.ACTION_CALL, uri);
startActivity(intent);
//调用发送短信程序(方法一)
Uri uri = Uri.parse("smsto:15980665805");
Intent intent = new Intent(Intent.ACTION_SENDTO, uri);
intent.putExtra("sms_body", "The SMS text");
startActivity(intent);
//调用发送短信程序(方法二)
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.putExtra("sms_body", "The SMS text");
intent.setType("vnd.android-dir/mms-sms");
startActivity(intent);
//发送彩信
Uri uri = Uri.parse("content://media/external/images/media/23");
Intent intent = new Intent(Intent.ACTION_SEND);
intent.putExtra("sms_body", "some text");
intent.putExtra(Intent.EXTRA_STREAM, uri);
intent.setType("image/png");
startActivity(intent);
//发送Email(方法一)(要在 Android 手机上才能测试)
Uri uri = Uri.parse("mailto:zhangsan@gmail.com");
Intent intent = new Intent(Intent.ACTION_SENDTO, uri);
startActivity(intent);
//发送Email(方法二)(要在 Android 手机上才能测试)
Intent intent = new Intent(Intent.ACTION_SENDTO);
intent.setData(Uri.parse("mailto:zhangsan@gmail.com"));
intent.putExtra(Intent.EXTRA_SUBJECT, "这是标题");
intent.putExtra(Intent.EXTRA_TEXT, "这是内容");
startActivity(intent);
//发送Email(方法三)(要在 Android 手机上才能测试)
Intent intent = new Intent(Intent.ACTION_SEND);
intent.putExtra(Intent.EXTRA_EMAIL, "me@abc.com");
intent.putExtra(Intent.EXTRA_SUBJECT, "这是标题");
intent.putExtra(Intent.EXTRA_TEXT, "这是内容");
intent.setType("text/plain");
//选择一个邮件客户端
startActivity(Intent.createChooser(intent, "Choose Email Client"));
//发送Email(方法四)(要在 Android 手机上才能测试)
Intent intent = new Intent(Intent.ACTION_SEND);
//收件人
String[] tos = {"to1@abc.com", "to2@abc.com"};
//抄送人
String[] ccs = {"cc1@abc.com", "cc2@abc.com"};
//密送人
String[] bcc = {"bcc1@abc.com", "bcc2@abc.com"};
intent.putExtra(Intent.EXTRA_EMAIL, tos);
intent.putExtra(Intent.EXTRA_CC, ccs);
intent.putExtra(Intent.EXTRA_BCC, bcc);
intent.putExtra(Intent.EXTRA_SUBJECT, "这是标题");
intent.putExtra(Intent.EXTRA_TEXT, "这是内容");
intent.setType("message/rfc822");
startActivity(Intent.createChooser(intent, "Choose Email Client"));
//发送Email且发送附件(要在 Android 手机上才能测试)
Intent intent = new Intent(Intent.ACTION_SEND);
intent.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");
intent.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/mp3/醉红颜.mp3");
intent.setType("audio/mp3");
startActivity(Intent.createChooser(intent, "Choose Email Client"));
//播放媒体文件(android 对中文名的文件支持不好)
Intent intent = new Intent(Intent.ACTION_VIEW);
//Uri uri = Uri.parse("file:///sdcard/zhy.mp3");
Uri uri = Uri.parse("file:///sdcard/a.mp3");
intent.setDataAndType(uri, "audio/mp3");
startActivity(intent);
Uri uri = Uri.withAppendedPath(MediaStore.Audio.Media.INTERNAL_CONTENT_URI, "1");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
//音乐选择器
//它使用了Intent.ACTION_GET_CONTENT 和 MIME 类型来查找支持 audio/* 的所有 Data Picker,允许用户选择其中之一
Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.setType("audio/*");
//Intent.createChooser:应用选择器,这个方法创建一个 ACTION_CHOOSER Intent
startActivity(Intent.createChooser(intent, "选择音乐"));
Intent intent1 = new Intent(Intent.ACTION_GET_CONTENT);
intent1.setType("audio/*");
Intent intent2 = new Intent(Intent.ACTION_CHOOSER);
intent2.putExtra(Intent.EXTRA_INTENT, intent1);
intent2.putExtra(Intent.EXTRA_TITLE, "aaaa");
startActivity(intent2);
// //设置壁纸
// Intent intent = new Intent(Intent.ACTION_SET_WALLPAPER);
// startActivity(Intent.createChooser(intent, "设置壁纸"));
//卸载APK
//fromParts方法
//参数1:URI 的 scheme
//参数2:包路径
//参数3:
Uri uri = Uri.fromParts("package", "com.great.activity_intent", null);
Intent intent = new Intent(Intent.ACTION_DELETE, uri);
startActivity(intent);
//安装APK(???)
Uri uri = Uri.fromParts("package", "com.great.activity_intent", null);
Intent intent = new Intent(Intent.ACTION_PACKAGE_ADDED, uri);
startActivity(intent);
//调用搜索
Intent intent = new Intent();
intent.setAction(Intent.ACTION_WEB_SEARCH);
intent.putExtra(SearchManager.QUERY, "android");
startActivity(intent);
Activity之间的隐士跳转的更多相关文章
- 安卓--使用Intent实现Activity之间传值与跳转
http://blog.csdn.net/cjjky/article/details/6337447 在一个Android的应用程序中,很少只存在一个Activity,一般都有多个Activity,如 ...
- 使用Intent实现Activity之间传值与跳转(转)
转:http://blog.csdn.net/cjjky/article/details/6337447 在一个Android的应用程序中,很少只存在一个Activity,一般都有多个Activity ...
- Android TabActivity与Activity之间的动画跳转(主要Tabhost中跳转出来的动画效果解决)
首先,要说的是ActivityA到ActivityB的切换这个相对简单,只要overridePendingTransition(In,out). 这里不就说了.但是这里要说名的ActivityA不能T ...
- Android之Activity之间跳转
本人自学Android,想到什么就写点什么.主要是怕忘了,哈哈~请观者不要建议~ 今天写点Android窗口之间的跳转以及自己理解: 1.Android中窗口之间的跳转,就是Activity之间的跳转 ...
- Android:Activity之间跳转和参数传递
一个activity就好比一个网页,此文章讲解怎样创建一个activity并且实现跳转! 一.学习创建Activity 1.新建一个java类,右击src目录,选择new-->class,新的a ...
- 实现android activity之间的跳转
android程序一般不会只有一个activity,会碰到activity之间的跳转.以下是使用Intent做应用程序内部的activity做跳转.比如,应用程序第一个activity是: 点击“下一 ...
- 杂记之activity之间的跳转
代码结构图 manifest.xml <?xml version="1.0" encoding="utf-8"?> <manifest xml ...
- android入门:activity之间跳转,并且回传参数
介绍: 两个activity进行跳转,在跳转过程中,将message由MainActivity传递到secondActivity,并且当secondActivity退回至MainAct ...
- Android 写一个Activity之间来回跳转的全局工具类(主要是想实现代码的复用)
废话不多说了,直接上代码,相信大家都能看得懂的. 一.主要工具类 package com.yw.chat.utils; import android.app.Activity; import andr ...
随机推荐
- 可用fidder测试的一些安全测试点
以下是整理的一些常见的安全渗透测试点 1.用工具fidder抓包拦截篡改服务器端返回的代码,导致下级拥有对上级的访问操作权限 以下是公司开发写的用户角色权限页面跳转 修改普通角色跳转的页面为管理员跳转 ...
- Java特性
1. Java面向对象三大特性 封装: 将客观事物封装成抽象的类,并且可以针对里面的数据和方法提供不同级别的保护. 继承: 可以基于已经存在的类构造一个新类.继承已经存在的类就可以复用这些类的方法和域 ...
- wall time
"showing elapsed time and wall clock time correspondingly." what's difference between elap ...
- adb shell dumpsys
adb shell dumpsys activity activities -- class/packagename adb shell dumpsys batterystate --reset ...
- redis11--java_jedis-test
使用Java开发项目的时候使用Redis的话,目前有一些开源API可以使用.最常用的就是jedis,它提供了许多基于Java的对象和方法来调用Redis的指令.jedis的jar包下载地址http:/ ...
- Struct和Class的区别(转载)
转载来源:http://blog.sina.com.cn/s/blog_48f587a80100k630.html C++中的struct对C中的struct进行了扩充,它已经不再只是一个包含不同数据 ...
- Oracle中 union 和 union all 的区别
如果我们需要将两个select语句的结果作为一个整体显示出来,我们就需要用到union或者union all关键字. union(或称为联合)的作用是将多个结果合并在一起显示出来. union和uni ...
- UITextField(一)监听输入内容的变化(开发笔记)
//添加事件UIControlEventEditingChanged [textField addTarget:self action:@selector(textFieldDidChange:) f ...
- PostgreSQL 命令
查看Schema: select * from information_schema.schemata; 查看使用的配置文件: SHOW config_file;
- 读书笔记之C# delegate
c#代理的使用主要在:需要将一个方法当做参数传递到另一个方法时. 比如启动一个线程执行任务,而这个线程要执行的方法可以通过代理传递过来. 代理包括一个方法或者多个方法的地址和C++的函数指针很相似,但 ...