【问题标题】:startActivityForResult from an Activity B and get Result in the Activity A从 Activity B 开始ActivityForResult 并在 Activity A 中获取 Result
【发布时间】:2015-11-13 11:12:54
【问题描述】:

情况如下:

我从 Activity A 打开了一个 Activity B。我想完成 B 并从 B 启动一个 Activity C,结果为 A (StartActivityForResult)。

【问题讨论】:

  • 你为什么要这么做?
  • Activity A= main Activity Activity B= page/fragment Manager Activity C= 作业要在 B 活动的页面中完成,但结果需要在 A 中接收 解决此问题的唯一方法是在主要活动中有一个页面/片段管理器,但我真的不知道该怎么做!
  • 你必须更具体一点
  • 使用三个片段而不是多个活动和一个事件总线在它们之间进行通信。

标签: android android-activity android-lifecycle


【解决方案1】:

据我了解,您将完成 Activity B 并且您必须开始 Activity C

你可以在ActivityA的onActivityResult方法中启动ActivityC,如果要传递数据。将数据通过intent 传递给Activity C

【讨论】:

    【解决方案2】:
    Activity B:
     @Override
    public void onBackPressed() {
        // TODO Auto-generated method stub
    
      //data send to Activity B
        Intent intent = new Intent();
        intent.putExtra("MESSAGE", strtext + "");//your msg
        setResult(2, intent);
    
    }
    
    
     Activiy A:
      @Override
     protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
    
            String sSuName = data.getStringExtra("MESSAGE");
    
            //txtfavouratecount.setText(sSuName);
    
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-08-19
      • 2013-06-09
      • 2016-01-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多