(笔记)第二章 :先从看到的入手-探究活动
2017-05-16 14:19
411 查看
2.1和2.2的内容比较简单,没什么好记的,
显示意图需要传入两个参数:上下文和目标活动的class文件。
2.隐式意图
隐式意图需要根据标签下配置的内容,可以指定当前活动能够响应的action和category。
3.传递数据
4.返回数据给上一个活动
FirstActivity中调用startActivityForResult(intent,请求码)来启动SecondActivity;在SecondActivity中调用setResult(RESULT_OK,intent);这个方法是专门向上一个活动返回数据的,接收两个参数,第一个是用于向上一个活动返回处理结果,一般为RESULT_OK和RESULT_CANCELED这两个。第二个把带有数据的intent传递回去。我们使用startActivityForResult()方法来启动SecondActivity,当SecondActivity销毁的时候,会回调FirstActivity的onActivityResult(int requestCode,int resultCode, Intent data),第一个参数是启动活动时传入的请求码,第二个参数是返回数据时的处理结果,第三个就是携带数据的intent。
2.3 Intent的基本用法
1.显示意图显示意图需要传入两个参数:上下文和目标活动的class文件。
Intent intent = new Intent(FirstActivity.this ,SecondActivity.class); startActivity(intent);
2.隐式意图
隐式意图需要根据标签下配置的内容,可以指定当前活动能够响应的action和category。
Intent intent = new Intent("com.example.activitytest.ACTION_START"); intent.addCategory("com.example.activitytest.MY_CATEGORY"); startActivity(intent);
隐式意图还有其他的用处,比如启动网页(http),电话等(tel),地图(geo).
Intent intent = new Intent(Intent.ACTION_VIEW); intent.setData(Uri.parse("http://www.baidu.com")); startActivity(intent);
Intent intent = new Intent(Intent.ACTION_CALL); intent.setData(Uri.parse("tel:10086")); startActivity(intent);
在<intent-inlter>下配置<data>标签页的格式
<data android:scheme="http">
android:scheme 用于指定数据的协议部分,如上例的http部分 android:host 用于指定数据的主机名部分,如上例的www.baidu.com部分 android:post 用于指定数据的端口部分 android:path 用于指定主机和端口名之后 android:mimeType 用于指定可以处理的数据类型
3.传递数据
发送数据
Intent intent = new Intent(FirstActivity.this ,SecondActivity.class); intent.putExtra("extraData","data"); startActivity(intent);
接收数据
Intent intent = getIntent(); String data = intent.getStringExtra("extraData");
4.返回数据给上一个活动
FirstActivity中调用startActivityForResult(intent,请求码)来启动SecondActivity;在SecondActivity中调用setResult(RESULT_OK,intent);这个方法是专门向上一个活动返回数据的,接收两个参数,第一个是用于向上一个活动返回处理结果,一般为RESULT_OK和RESULT_CANCELED这两个。第二个把带有数据的intent传递回去。我们使用startActivityForResult()方法来启动SecondActivity,当SecondActivity销毁的时候,会回调FirstActivity的onActivityResult(int requestCode,int resultCode, Intent data),第一个参数是启动活动时传入的请求码,第二个参数是返回数据时的处理结果,第三个就是携带数据的intent。
FirstActivity启动SecondActivity: Intent intent = new Intent(FirstActivity.this ,SecondActivity.class); startActivityForResult(intent,1); SecondActivity 中使用setResult返回数据: Intent intent = new Intent(); intent.putExtra("data_return","Hello FirstActivity"); setResult(RESULT_OK,intent); 接收SecondActivity返回的数据 protected void onActivityResult(int requestCode,int resultCode, Intent data){ switch(requestCode){ case 1: if(resultCode == RESULT_OK){ String data = data.getStringExtra("data_return"); } } }
2.4 activity的生命周期
onCreate() , onStart() ,onResume() , onPause() ,onStop() , onDestory() ,onRestart().2.5 activity的启动模式
standard ,singleTop ,singleTast ,singleInstance相关文章推荐
- 第二行代码学习笔记——第二章:先从看得到的入手——探究活动
- 第二章 先从看到的入手探究活动
- 第二行代码学习笔记——第二章:先从看得到的入手——探究活动
- 第一行代码学习笔记-第二章 探究活动-1.活动的基本用法
- 第一行代码学习笔记-第二章 探究活动-3.活动的生命周期
- 第一行代码第二版(郭霖著)笔记之第二章(探究活动)
- 第一行代码学习笔记-第二章 探究活动-5. 活动的最佳实现
- 阅读郭林《第一行代码》的笔记——第2章 先从看得到的入手,探究活动
- 第一行代码学习笔记-第二章 探究活动-2.Intent的使用
- 第一行代码学习笔记第二章——探究活动
- 第二章 先从看得到的入手-探究活动
- 第二章 先从看得到的入手 探究活动——总结
- 第一行代码笔记, 第二章------探究活动
- 第一行代码学习笔记-第二章 探究活动-4.活动的启动模式
- Android:日常学习笔记(6)——探究活动(3)
- 《第一行代码》第二章笔记-设置主活动
- 第一行代码笔记-探究活动
- 【Android笔记】 探究活动①活动的基本用法
- UML笔记补充——活动图的简单理解(看书过程中看到的经典实例,记录下来,以免忘了)
- Android:日常学习笔记(5)——探究活动(2)