`
lisher
  • 浏览: 10492 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

startActivityForResult、onActivityResult、setResult

 
阅读更多
在一个主界面(主Activity)上能连接往许多不同子功能模块(子Activity上去),当子模块的事情做完之后就回到主界面,或许还同时返回一些子模块完成的数据交给主Activity处理。这样的数据交流就要用到回调函数onActivityResult。
<1>startActivityForResult(Intent intent, int requestCode);
第一个参数:一个Intent对象
第二个参数:如果> = 0,当Activity结束时requestCode将归还在onActivityResult()中。以便确定返回的数据是从哪个Activity中返回
<2>onActivityResult(int requestCode, int resultCode, Intent data)
第一个参数:这个整数requestCode提供给onActivityResult,是以便确认返回的数据是从哪个Activity返回的。
            这个requestCode和startActivityForResult中的requestCode相对应。
第二个参数:这整数resultCode是由子Activity通过其setResult()方法返回。

第三个参数:一个Intent对象,带有返回的数据。
<3>setResult(int resultCode, Intent data)
调用这个方法把Activity想要返回的数据返回到父Activity
第一个参数:当Activity结束时resultCode将归还在onActivityResult()中,一般为RESULT_CANCELED , RESULT_OK。
第二个参数:一个Intent对象,返回给父Activity的数据。



http://www.blogjava.net/mixer-a/archive/2012/03/23/375014.html
分享到:
评论

相关推荐

    startActivityForResult+onActivityResult+setResult

    3个方法的介绍和使用 startActivityForResult(Intent intent, int requestCode ) onActivityResult(int requestCode ,int resultCode, Intent data) setResult(int resultCode,intent intent)

    Android startActivityForResult和setResult的区别

    如果在 startActivityForResult 启动的 Activity 中设置 setResult,结果并不会马上返回给 parent 的 Activity,只有当前 Activity 被 finish 时,结果才会被发送给 parent 的 onActivityResult 方法处理。...

    Android onActivityResult和setResult方法详解及使用

    在Android应用程序开发中,`onActivityResult()` 和 `setResult()` 方法是两个非常关键的组件,它们用于在不同的Activity之间传递数据和控制流程。当我们需要从一个Activity启动另一个Activity并期待返回结果时,这...

    Intent传递数据

    这是介绍了Intent怎样传递数据,传递什么类型的数据,和startactivityforResult,setResult,onactivityResult的用法,请参考:http://blog.csdn.net/forwardyzk/article/details/46620021

    Android-基于RxPermissions框架思想在使用startActivityForResult可以不重写onActivityResult回调

    在此基础上,我们可以通过类似的思想实现`startActivityForResult`的响应处理,无需重写`onActivityResult`。 首先,理解`RxPermissions`的工作原理至关重要。这个库的核心在于将权限请求转换为一个Observable序列...

    Android中onActivityResult的用法

    Android 中 onActivityResult 的用法 ...通过使用 startActivityForResult 函数和 setResult 函数,我们可以轻松地实现活动之间的数据交互。同时,我们需要重写 onActivityResult 函数来处理返回的数据。

    StartActivityForResult

    在某些情况下,`onActivityResult`可能在`StartActivityForResult`之前就被调用。确保在正确的时间点处理返回结果。 ### 5. 结论 `StartActivityForResult`是Android开发中的重要组件交互方式,它使得不同Activity...

    startActivityForResult的详细用法

    在Android应用开发中,`startActivityForResult`是一个非常重要的方法,它允许我们在启动一个Activity时传递数据,并在那个Activity执行完后返回结果到调用它的Activity。这个过程涉及到Intent、生命周期管理和数据...

    onActivityResult的小demo

    在这个小demo中,我们将深入探讨`onActivityResult`的使用,以及如何通过`setResult`设置返回的数据。 首先,让我们理解`startActivityForResult`的作用。当你需要从一个Activity启动另一个Activity并期望得到一些...

    OnActivityResult

    当我们在一个Activity中启动另一个Activity并期待返回数据时,我们通常会使用`startActivityForResult()` 方法,然后在目标Activity完成时,系统会调用源Activity的`OnActivityResult()` 方法来传递返回的数据。...

    【android】的startActivityForResult

    - 如果在没有调用`setResult`的情况下直接调用`finish()`,那么`onActivityResult`将不会被调用。 - 使用`startActivityForResult`时,确保目标Activity的启动模式适合你的需求,如standard、singleTop、singleTask...

    onActivityResult传值的使用

    setResult(RESULT_OK, resultIntent); finish(); ``` 3. **接收返回结果**:在原始Activity中,重写 `onActivityResult` 方法,根据请求码和结果代码处理返回的数据。 ```java @Override protected void ...

    startActivityForResult intent 跳转相关的

    在子Activity中,开发者可以通过`setResult()`方法设置返回的结果,这可以是一个整型值或一个Bundle对象,包含要传递的数据。完成后,使用`finish()`方法关闭子Activity,此时系统会调用父Activity的`...

    StartActivityForResult小例子

    5. 主Activity的`onActivityResult`回调方法被触发,根据请求码判断是哪个`StartActivityForResult`返回的结果,然后处理返回的数据。 ### 2. 使用步骤 #### 步骤1:创建Intent 在启动者Activity中,创建一个...

    startActivityForResult你所不知道的---Fragment

    然而,尽管`Activity`中的`startActivityForResult()`方法被广泛使用,但`Fragment`中的相应功能`startActivityForResult()`却常常被开发者忽视。这个方法在处理`Fragment`与`Activity`之间的交互,特别是数据返回时...

    startActivityForResult Demo

    3. **启动Activity并请求结果**:使用`startActivityForResult`启动新Activity,并提供一个请求码,用于在`onActivityResult`中区分不同的请求。 ```java startActivityForResult(intent, 请求码); ``` 请求码是一个...

    用注解方式处理各种OnActivityResult.zip

    当一个Activity启动另一个Activity并期望得到结果时,通常会使用`startActivityForResult()`方法,然后在被启动的Activity中通过`setResult()`设置返回结果。当返回到原始Activity时,`OnActivityResult`回调会被...

    startActivityForResult使用方式

    在Android应用开发中,`startActivityForResult()`是一个关键的方法,用于在不同的Activity之间进行数据交互。这个方法允许一个Activity启动另一个Activity,并等待返回的结果。在本篇中,我们将深入探讨`...

Global site tag (gtag.js) - Google Analytics