Intent的使用
2016-07-09 22:40
309 查看
复习了下基础知识,仅仅只是为了记录一下。
Intent分为两种,一种是显式Intent,一种是隐式Intent。
显式Intent:
直接指定类名的,称为显式Intent。
第一种:
第二种:(指定了包名,指定了类名,这是显式的。)
使用Intent.setComponent(new ComponentName(”全包名”,”全类名”)),因为在5.0之前可以使用action启动,但是在5.0之后只能用这种方法启动了。
隐式Intent:
不指定直接类名,通过其他使用目标类的方法,称为隐式Intent。
清单文件中的Activity设置Action
Intent选择过滤器:
Intent通过Action启动的情况下,如果有多个Activity的Action相同的话会弹出一个选择器。如图。
那么在具有相同Action的情况下如果不出现选择器的话,还可以添加别的筛选器。
例如:清单文件中的Acticity添加一个data标签,设置一个scheme,取个名。
代码:Intent多传个Uri.parse(),注意后面要加个冒号,这样就会直接跳转到要跳转的Activity2
通过浏览器链接打开Acitvity
在复习的时候发现有这东西,暂时没真正用过。。。
方法:
清单文件中Activity的设置:(scheme是起一个协议的名字,自定义。)
写个Html页面:(href里面的://前的app就是Activity里面scheme设置的协议)
手机上的浏览器打开就可以启动Activity。
只是稍微整理一下。。
Intent分为两种,一种是显式Intent,一种是隐式Intent。
显式Intent:
直接指定类名的,称为显式Intent。
第一种:
//显式Intent Intent intent=new Intent(this,Acitvity2.class); startActivity(intent);
第二种:(指定了包名,指定了类名,这是显式的。)
使用Intent.setComponent(new ComponentName(”全包名”,”全类名”)),因为在5.0之前可以使用action启动,但是在5.0之后只能用这种方法启动了。
Intent intent=new Intent(); intent.setComponent(new ComponentName("com.example.kaka.intenttest","com.example.kaka.intenttest.Acitvity2")); startActivity(intent);
隐式Intent:
不指定直接类名,通过其他使用目标类的方法,称为隐式Intent。
清单文件中的Activity设置Action
<activity android:name=".Acitvity2"> <intent-filter> <category android:name="android.intent.category.DEFAULT"></category> <action android:name="com.example.kaka.intentest.intent.action.activity2"></action> </intent-filter> </activity>
Intent intent=new Intent("com.example.kaka.intentest.intent.action.activity2"); startActivity(intent);
Intent选择过滤器:
Intent通过Action启动的情况下,如果有多个Activity的Action相同的话会弹出一个选择器。如图。
那么在具有相同Action的情况下如果不出现选择器的话,还可以添加别的筛选器。
例如:清单文件中的Acticity添加一个data标签,设置一个scheme,取个名。
<activity android:name=".Acitvity2" android:label="Activity2"> <intent-filter> <category android:name="android.intent.category.DEFAULT" /> <action android:name="com.example.kaka.intentest.intent.action.activity2" /> <data android:scheme="activity2"></data> </intent-filter> </activity>
代码:Intent多传个Uri.parse(),注意后面要加个冒号,这样就会直接跳转到要跳转的Activity2
Intent intent=new Intent("com.example.kaka.intentest.intent.action.activity2", Uri.parse("activity2:")); startActivity(intent);
通过浏览器链接打开Acitvity
在复习的时候发现有这东西,暂时没真正用过。。。
方法:
清单文件中Activity的设置:(scheme是起一个协议的名字,自定义。)
<activity android:name=".Acitvity2" android:label="Activity2"> <intent-filter> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE"/> <action android:name="android.intent.action.VIEW" /> <data android:scheme="app"></data> </intent-filter> </activity>
写个Html页面:(href里面的://前的app就是Activity里面scheme设置的协议)
<!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> </head> <body> <a href="app://hell word">lauch Activity</a> </body> </html>
手机上的浏览器打开就可以启动Activity。
只是稍微整理一下。。
相关文章推荐
- Android实现将一个Activity设置成窗口样式的方法
- Android Activity 完全结束并退出程序的实例
- Android开发 旋转屏幕导致Activity重建解决方法
- Android 使用Intent传递数据的实现思路与代码
- android横竖屏切换时候Activity的生命周期
- Android学习笔记--使用剪切板在Activity中传值示例代码
- Android开发技巧之在a标签或TextView控件中单击链接弹出Activity(自定义动作)
- Android组件间通信--深入理解Intent与IntentFilter
- android PopupWindow 和 Activity弹出窗口实现方式
- Android Fragment 基本了解(图文介绍)
- Android中Intent机制详解及示例总结(总结篇)
- Android使用Intent发送短信的实现方法
- Android一次性退出多个Activity的方法
- Android开发中关于获取当前Activity的一些思考
- Android开发中Activity属性设置小结
- Android新建Activity的方法
- Android的activity学习笔记
- 详解Activity之singletast启动模式及如何使用intent传值
- Android编程实现两个Activity之间共享数据及互相访问的方法
- Android跨进程通信