Fragment中调用startActivityForResult()返回值的实现
2015-05-29 02:52
375 查看
Fragment中调用startActivityForResult()返回值,出现了各种问题,终于成功,记录如下:
一、Fragment中的调用方法,Intent中context参数为getActivity(), 注意startActivityForResult()的前面为空
二、被调用的Activity的结束方法
三、Fragment中重写onActivityResult(),注意super
四、 注意fragment的父activity中是否重写了onActivityResult方法,回调是要先经过父activity中的onActivityResult方法的,不要被它吃掉
一、Fragment中的调用方法,Intent中context参数为getActivity(), 注意startActivityForResult()的前面为空
<span style="font-size:18px;"> <span style="font-size:14px;">Intent intent = new Intent(getActivity(), TenderActivity.class); startActivityForResult(intent, 1000);</span></span>
二、被调用的Activity的结束方法
<span style="font-size:18px;"> @Override public void onBackPressed() { Intent intent = new Intent(); setResult(RESULT_OK, intent); finish(); }</span>
三、Fragment中重写onActivityResult(),注意super
<span style="font-size:18px;"> @Override public void onActivityResult(int requestCode, int resultCode, Intent data){ super.onActivityResult(requestCode, resultCode, data); //这个super可不能落下,否则可能回调不了 switch(requestCode){ case 1000: if(resultCode == getActivity().RESULT_OK){ Logg.d("TAG", "收到返回值了收到了了子了了了了了了子了了了了了了了"); } break; case 1: if(resultCode == getActivity().RESULT_OK){ Logg.d("TAG", "收到返回值了收到了了子了了了了了了子了了了了了了了"); } break; } }</span>
四、 注意fragment的父activity中是否重写了onActivityResult方法,回调是要先经过父activity中的onActivityResult方法的,不要被它吃掉
相关文章推荐
- perl好玩的编程1:随机数生成
- 黑马程序员——网络编程的应用
- 九章算法面试题72 翻转链表I
- 九章算法面试题71 平方根
- PERL语言入门:第四章:子程序(函数) :调用子程序与子程序返回值
- ASP.NET菜鸟之路之Response小例子
- git merge简介
- 激光雷达点云数据处理相关算法库收集
- 黑马程序员——网络编程(二)
- Bash 14-16
- Python----定义
- 前端框架 EasyUI (1)熟悉一下EasyUI
- Python文件之----CSV
- tcp recv() 什么时候停止
- PERL语言入门:第四章:子程序(函数)
- LVS DR模型配置示例
- Xfire实现webservice时,对象传递规则及解析简析
- 在cocos2dx 3.0中如何产生随机数
- 总结Selenium WebDriver中一些鼠标和键盘事件的使用
- 返回键退出事件