intent,requesrcode,resultcode开发总结
来源:互联网 发布:专业房屋设计软件 编辑:程序博客网 时间:2024/06/11 00:07
Intent传参,requestcode与resultcode
原需求:
A中有一个按钮,一个文本框,点击按钮时跳转到B中;B中有一个listview,点击listview的item,跳转到C;从C中的listview中选择,当点击listview的item时,把选择的item值回传给B,B再把值回传给A,在A中的文本框中显示出返回的值。
新增需求:
1. 在B中新添加搜索功能,一个搜索按钮,点击搜索按钮跳转到Search页面,Search页面输入关键字,然后把筛选结果显示在C的listview中,点击item,把选择的值按原路依次回传给A,在A中的文本框中显示出返回的值。
2.在C中新添加搜索功能,一个搜索按钮,点击搜索按钮跳转到Search页面,Search页面输入关键字,然后把筛选结果显示在C的listview中,点击item,把选择的值按原路依次回传给A,在A中的文本框中显示出返回的值。
遇到问题:
1.当从Search页面进入到C中时,在C页面点击后退,需要回退到B页面,但是程序退到了Search页面。
解决方法:
当点击后退按钮时在C中强制关闭Search Activity。本来想是否可以通过requestcode来来判断是从哪个Activity跳转过来的,然后根据不同的Activity来选择返回的路径。查资料后发现,requestcode 只能在startActivity/startActivityForResult页面的onActivityResult方法中判断,并不能在跳转后的Activity进行判断。
有两种方法:
a. 两个Activity
public class A extends Activity {
public static A instance = null;
@Override
protected void onCreate(BundlesavedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
.....
instance= this;
}
}
public class B extends Activity {
@Override
protected void onCreate(BundlesavedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
A.instance.finish();
}
}
b.通过ActivityManager
ActivityManager manager =(ActivityManager)getSystemService(ACTIVITY_SERVICE);
manager.restartPackage(packageName);
2.intent 回传参数时是原路返回的。比如途中黑色路线AàBàC,在C中选择值后不能直接回传值给A,而是先运行B中的onActivityResult()方法,然后在运行A中的onActivityResult()方法,即使requestCode一样也还是原路返回。
3.startActivityForResult方法启动的Activity关闭时,不setResult话,系统默认返回的resultCode是0。
4.下面一些网址是关于intent的讲解,遇到问题的参考资料,个人觉得写得挺详细的,容易理解。参考资料:
http://blog.csdn.net/donglynn/article/details/22693835
http://blog.sina.com.cn/s/blog_6afeac500100y157.html
http://blog.sina.com.cn/s/blog_533074eb01011lmg.html
- intent,requesrcode,resultcode开发总结
- intent,requesrcode,resultcode开发总结
- Activity,intent, requestCode, resultCode
- Android onActivityResult不返回resultCode和intent
- Android Intent数据回传requestCode和 resultCode区别
- Android开发中Intent的使用总结
- Android开发中Intent的一些总结
- Android开发中Intent用法总结
- 安卓开发-intent属性总结
- Intent总结
- Intent 总结
- Intent总结
- intent 总结
- Intent总结
- Intent总结
- Intent总结
- Intent总结
- Intent 总结
- Java集群优化——dubbo+zookeeper构建高可用分布式集群
- 织梦自定义专题节点容器模板修正
- 7 Java基础 异常
- 经历了一期的项目洗礼的成长
- javaweb自定义MVC框架的设计与实现(1)
- intent,requesrcode,resultcode开发总结
- 【Python】import class/import module
- netty长连接实例
- NSSet和NSArray的区别
- View 的事件体系
- Spring MVC学习总结(4)——SpringMVC权限管理
- this.options在chrome浏览器提示undefined的解决办法
- Android 问题 - Binary XML file line #36: Error inflating class android.support.v7.widget.RecyclerVie
- IOS开发 汉字转拼音 把用户名按照姓名首字母进行排序