首页 要闻 中国 经济 财经 品牌 点评 会展 综合 | 设为首页
中国品牌要闻网-传递资讯的价值打造品牌的影响
您现在的位置:首页/家装建材/ 正文
Startactivityforresult一般用来在一个Activity中启动另一个
来源:
编辑:
时间:2022-10-20

       在整理需求的时候,发现页面之间的数据传输这块是个可以总结的知识点。一般情况下页面之间的数据传输可以有以下几种思路:1、通过startActivityForResult方法进行数据传输;2、通过广播的形式传输;3、可以通过接口的调用来传输数据;4、通过存储介质来分享数据;5、通过EventBus进行页面之间的传输;这边总结一下第一种的简单使用。


       一个主界面(主Activity)通过意图跳转至多个不同子Activity上去,当子模块的代码执行完毕后再次返回主页面,将子activity中得到的数据显示在主界面/完成的数据交给主Activity处理。这种带数据的意图跳转需要使用activity的onActivityResult()方法。
       关于startActivityForResult startActivityForResult(Intent intent, int requestCode)老是遗忘,尤其其中的几个参数。老是傻傻分不清。所以今天就简单的记录下来。
       startActivityForResult startActivityForResult(Intent intent, int requestCode)。这个方法我一般用来在ActivityA中启动另一个activityB,当返回的时候需要携带来自B的数据。
       一、首先在ActivityA中启动startActivityForResult startActivityForResult(Intent intent, int requestCode)参数2.requescode,你自定义的一个int类型的数值(一般>0),当从activityB中返回来的时候。会携带回来。所以你可以用这个参数来判断是从哪个activity中返回的。(前提是你在开启新的activity的时候 要传的requestcode不一样)。
       二。其次还有一个方法。这个方法是在ActivityB中使用的,主要一定要在finish()之前调用该方法 不然不起作用。
       三。最后在ActivityA中onActivityResult()中接收数据,然后拿到数据你想干嘛就干嘛了。

免责声明:本文仅代表作者个人观点,与本网无关。其原创性以及文中陈述文字和内容未经本站证实, 对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺, 请读者仅作参考,并请自行核实相关内容。当事人(单位)如有异议,请参阅《删帖说明》办理。
中国品牌要闻网-传递资讯的价值打造品牌的影响
  • CopyRight@ 2005-2022 中国品牌要闻网
  • 工商注册号 430122000189097
  • ICP备案许证:渝ICP备2022012785号