zoukankan      html  css  js  c++  java
  • android之startActivityForResult

    思想:

    普通intent直接启动一个activity, 调用startActivity方法

    然后 startActivityForResult这个方法会在调用完毕之后从后启动的activity中返回 一些结果给调用者,当然这个传递就得通过Intent的extra来传递了。
    下面对着具体的参数来看。

    活动A中:

    Intent intent = new Intent();

    intent.setClass(this,  B.calss);

    //这里还可以添加要传递给B的数据

    //比较小的数据直接传数据类型

    //比较多的话可以用bundle类来传递

    startActivityForResult(intent,  10);  //第二个参数叫requestcode , 大于等于0,相当于返回的时候一个标记。

    活动B中:

    1.   getIntent()得到Intent

    2.   通过Intent得到你想要得到的数据

    3.   然后通过调用setResult方法返回一个resultcode

    注意上面出现了 两个未知的的东西。   requestcode and resulecode

    在那里用到它们呢?  活动A中,因为是活动A需要活动B返回来的信息

    因此在A中实现一个方法

    onActivityResult(int requestCode, int resultCode, Intent data)

    两个都来了。 由requestcode确定是哪个acitivity返回的。resultCode确定返回的情况。Intent data就可以从它的extra里面获得数据了。

    OK 。 不明白的话再从网上找例程吧。

    另外还有很重要的一点,onActivityResult如何调用。 在恢复过来之后有两种情况

    1.  如果你的Activity还在的话  应该是  OnactivityResult  --->  Onstart  ---> Onresume,  如果是半屏的activity就是OnactivityResult ---> Onresume

    2.  如果Activity不在了,这种情况还没遇到过,没有调试出来。

  • 相关阅读:
    linux下淘宝安全控件问题
    什么样的路由器有类似改hosts的功能
    linux 常见音乐、视频播放器简介
    把Ubuntu打造成Mac Macbuntu
    Linux桌面“彩”起来:桌面环境及窗口管理器大盘点
    听听各位对Ubuntu的UI的看法
    KVM虚拟机的创建、管理与迁移
    轻量级桌面 openbox + tint2 + conky + stalonetray + pcmanfm + xcompmgr
    ubuntu设置自动关机
    ubuntu sublime 破解
  • 原文地址:https://www.cnblogs.com/hpf311/p/2565635.html
Copyright © 2011-2022 走看看