android--Intent和IntentFilter详解
来源:互联网 发布:windjview mac 编辑:程序博客网 时间:2024/05/13 14:55
Intent用于启动Activity, Service, 以及BroadcastReceiver三种组件, 同时还是组件之间通信的重要媒介.
使用Intent启动组件的优势
1, Intent为组件的启动提供了一致的编程模型. 无论想要启动的组件是Activity, Service, 还是BroadcastReceiver, 都可以使用Intent封装启动的意图.
2, 在某些时候, 应用程序只是想启动具有某种特征的组件, 并不想和某个特定的组件耦合. 使用Intent可以方便的达到这种高层次解耦的目的.
Intent的Component属性
Intent对象的setComponent(ComponentName comp)方法用于设置Intent的Component属性. ComponentName包含如下几个构造器:
ComponentName(String pkg, String cls)
ComponentName(Context pkg, String cls)
ComponentName(Context pkg, Class
String data = "Hello SecondActivity" ;Intent intent = new Intent (当前Activity. this, 目标Activity.class ) ;intent.putExtra( "传入名称", data) ;startActivity(intent) ;
接受Activity代码:
Intent intent = getIntent();String data = intent.getStringExtra( "传入名称" );Intent:用于参数回传
先有传入:
intent.setClass(MainActivity. this, Register_Activity.class );startActivityForResult(intent,1);startActivityForResult(Intent intent,int RequestCode);//把intent要启动的目标Activity设置一个RequestCode值(当然RequestCode的值使大于等于0的一个值)。
在回传:
Intent intent = new Intent();intent.putExtra("data1",name.getText().toString() );intent.putExtra("data2",textP1);setResult(RESULT_OK,intent);finish();//结束当前Activity
在接收:重写方法 onActivityResult(intrequestCode, intresultCode,Intent data)
onActivityResult(int requestCode, int resultCode, Intent intent)
RequestCode的作用 :区别请求的activity,android将每个请求设定一个大于等于0的int值,这就是requestcode。
resultCode参数对应于子模块中setResut(int resultCode, Intent intent)函数中的resultCode值,用于区别不同的返回结果(如请求正常、请求异常等)。
由此,在onActivityResult函数中即可利用requestCode区别开不同的返回结果。
而onActivityResult中的resultCode参数对应于子模块中setResut(int resultCode, Intent intent)函数中的resultCode值,用于区别不同的返回结果(如请求正常、请求异常等)。
protected void onActivityResult(int requestCode, int resultCode , Intent data) { switch (requestCode) { case 1: if (resultCode == RESULT_OK) { data1 = data.getStringExtra( "data1"); data2 = data.getStringExtra( "data2"); name.setText( data1); edit_pwd.setText( data2); nameY = data1; edit_pwdyY = data2; } break; default: }
- android Intent和intentFilter详解
- Android Intent和IntentFilter详解
- android--Intent和IntentFilter详解
- Android Intent\IntentFilter 详解
- android笔记--Intent和IntentFilter详解
- android笔记--Intent和IntentFilter详解
- android笔记--Intent和IntentFilter详解
- android笔记--Intent和IntentFilter详解(转)
- android系列:Intent和IntentFilter详解
- android笔记--Intent和IntentFilter详解
- android笔记--Intent和IntentFilter详解
- android笔记--Intent和IntentFilter详解
- android笔记--Intent和IntentFilter详解
- android笔记--Intent和IntentFilter详解
- android笔记--Intent和IntentFilter详解
- Intent和IntentFilter详解
- intent和intentfilter详解
- Intent和IntentFilter详解
- c++中的异常处理
- ant自动打包apk(详细),引用到第三方工程类库以及里面的资源,修改包名和工程名
- 图解Tomcat类加载机制
- String与StringBuffer,StringBuilder的区别
- Azure Token Lifetime
- android--Intent和IntentFilter详解
- Ehcache工具类 EhcacheUtil
- HTML之认识标签(一)
- Codeforces Round #161 (Div. 2)-D. Cycle in Graph
- HDU 1254 推箱子(BFS + DFS)
- 【SpringBoot】SpringBoot核心-基本配置
- appium(二)简单的demo
- ArcGIS空间分析要点学习
- Fragment Transactions & Activity State Loss