intent和intentfilter
intent 和intent Filters
startActivity()的机制
用到了IBinder ipc 用到了进程间通讯机制
activity有四种LaunchMode
当startActivity()的时候不知道启动的是不是和自己的activity在一个
进程中。所以要用 IPC 进程间通讯来调用
简单的使用方法
1
A.class中
1
2
3
|
Intent new Intent(A. this , class ); intent.putExtra( "sundy.demo" , "你好" ); startActivity(intent); |
B.class中
1
2
3
|
Intent this .getIntent(); String value "key" ); Toast.makeText( this , 1 ).show(); |
2
A.class中
1
2
3
4
|
Intent new Intent(); intent.putExtra( "key" , "123" ); intent.setAction( "com.wang.cn" ); startActivity(intent); |
B。
class中
.
1
2
3
|
Intent this .getIntent(); String value "key" ); Toast.makeText( this , 1 ).show(); |
要在mainfest中设置B。clas的activity中的intent-filter的action中设置
1
2
3
4
5
6
7
|
<activity ".B" > <intent-filter> <action "com.wang.cn" /> <category "android.intent.category.DEFAULT" /> </intent-filter> </activity> |
必须写上 <category android:name="android.intent.category.DEFAULT" />这一句不然会报错。。
3. 简单的打电话 代码
1
2
3
4
5
|
Intent new Intent(); intent.setAction(Intent.ACTION_DIAL); intent.setData(Uri.parse( "tel:12345645555" )); startActivity(intent); |
setAction和setData都是系統定義好 。這裡仅仅說下使用方法
4.获取data中的值
A。class中
1
2
3
4
|
Intent new Intent(); intent.setAction( "com.wang.cn" ); intent.setData(Uri.parse( "tel:12345645555" )); startActivity(intent); |
B。class中
1
2
3
4
|
Intent this .getIntent(); String uri Toast.makeText( this , 1 ).show(); |
setAction和setData都是系統定義好 。這裡仅仅說下使用方法
1
2
3
4
5
6
7
8
9
10
|
<activity ".Rose" > <intent-filter> <action "com.wang.cn" /> <category "android.intent.cat /> <data "tel" > </data> </intent-filter> </activity> |
5.startActivityForResult 方法
A。
class中
1
2
3
|
Intent new Intent(); intent.setClass(A. this ,B. class ); startActivityForResult(intent, 123 ); |
在A。
clas的activity中 导入系统的onActivityResult方法
1
2
3
4
5
6
7
8
9
|
@Override protected void onActivityResult( int requestCode, int resultCode, // super .onActivityResult(requestCode, if (resultCode 321 ) String value "name" ); Toast.makeText( this , 1 ).show(); } } |
B.class中
1
2
3
4
5
6
7
8
9
10
11
|
button.setOnClickListener( new OnClickListener() @Override public void onClick(View Intent this .getIntent(); intent.putExtra( "name" , "111111111" ); setResult( 321 , finish(); } }); |
当resultCode一样的时候 回传值成功。。
6.intent 传递 对象 类 等等
intent和intentfilter的更多相关文章
- Intent和IntentFilter详解
Intent用于启动Activity,Service, 以及BroadcastReceiver三种组件, 同时还是组件之间通信的重要媒介. 使用Intent启动组件的优势1, Intent为组件的启动 ...
- [转]android笔记--Intent和IntentFilter详解
Intent用于启动Activity, Service, 以及BroadcastReceiver三种组件, 同时还是组件之间通信的重要媒介. 使用Intent启动组件的优势1, Intent为组件的启 ...
- android学习日记20--连接组件之Intent和IntentFilter
上次刚了解完Android的四大组件,现在学习组件间通信的Intent和IntentFilter 一.Intent 1.简述 Intent(意图)在应用程序运行时连接两个不同组件,是一种运行时的绑定机 ...
- Intent及IntentFilter具体解释
Intent用于启动Activity, Service, 以及BroadcastReceiver三种组件, 同一时候还是组件之间通信的重要媒介. 使用Intent启动组件的优势 1, Intent为组 ...
- Android应用程序组件之间的通信Intent和IntentFilter
Android应用程序的基本组件,这些基本组建除了Content Provider之外,几乎全部都是依靠Intent对象来激活和通信的. 下面介绍Intent类,并通过例子来说明Intent一般用法 ...
- Android的Intent和IntentFilter应用说明一例
很多人对文档中的Intent和IntentFilter不理解是什么意思,我这里举例解释下. Intent字面意思就是目标,目的.通俗一点,需要达成某些目标,则需要提供一些动作,这些目标的分类,以及达成 ...
- Intent和IntentFilter简介
Intent和IntentFilter简介 Intent和IntentFilter简介 意图Intent分类: 显式意图:利用class找到对方,在同一个应用程序类可以方便使用,但是在不同的应用程序无 ...
- android笔记--Intent和IntentFilter详解
本文转载自:https://www.cnblogs.com/liushengjie/archive/2012/08/30/2663066.html 本文转载自:https://www.cnblogs. ...
- Android开发之隐式Intent中Intent-filter的三个属性-action,category,data
使用隐式Intent时,需要使用到意图过滤器Intent-filter.Intent-filter含有三个属性:action,category,data.通过这三个属性的组合,可以启动想要启动的act ...
随机推荐
- CentOS7开机启动管理systemd简介及使用
systemd提供更优秀的框架以表示系统服务间的依赖关系实现系统初始化时服务的并行启动,同时达到降低Shell的系统开销的效果systemd的目标是:尽可能启动更少进程:尽可能将更多进程并行启动.sy ...
- css去除webkit内核的默认样式
做移动端的朋友应该知道,iphone的默认按钮是个很恶心的圆角,select下拉框也有默认样式无法修改. 这时候可以用到 -webkit-appearance:none //去除默认样 在按钮和sel ...
- dedecms织梦导航栏二级菜单的实现方法
dede导航下拉菜单,一级栏目增加二级下拉菜单 使用dedecms5.6——5.7 将这段代码贴到templets\default\head.htm文件里<!-- //二级子类下拉菜单,考虑 ...
- php基于数组的分页实现
关于数组的分页函数,用数组进行分页的好处是可以方便的进行联合多表查询,只需要将查询的结果放在数组中就可以了以下是数组分页的函数,函数page_array用于数组的分页,函数show_array用于分页 ...
- bootstrap js插件
导入JavaScript插件 Bootstrap除了包含丰富的Web组件之外,如前面介绍的下拉菜单.按钮组.导航.分页等.他还包括一些JavaScript的插件. Bootstrap的JavaScri ...
- Python的subprocess模块
尝试在Python中运行可执行文件,网上给出的解决方案是: import os os.system("此处填程序路径") 我要运行的程序文件名中有空格,因此果断失败了,查看了一下帮 ...
- Mongodb2.6升级到Mongodb3.0.2笔记
PS:升级到3版本的Mongodb以后,drop集合是可以直接释放磁盘空间的 停止老版本Mongodb >use admin >db.shutdownServer(); 下载解压新版本Mo ...
- [BZOJ 1257] [CQOI2007] 余数之和sum 【数学】
题目链接:BZOJ - 1257 题目分析 首先, a % b = a - (a/b) * b,那么答案就是 sigma(k % i) = n * k - sigma(k / i) * i ( ...
- 获得进程可执行文件的路径: GetModuleFileNameEx, GetProcessImageFileName, QueryFullProcessImageName
http://blog.csdn.net/bichenggui/article/details/4774457 -------------------------------------------- ...
- Java Random
第一种情况 Random rand = new Random(47); for(int i=0;i<10;i++) System.out.println(rand.nextInt(100)); ...