为了账号安全,请及时绑定邮箱和手机立即绑定

将数据发送回Android中的主要活动

将数据发送回Android中的主要活动

慕勒3428872 2019-06-19 17:24:43
将数据发送回Android中的主要活动我有两个活动:主要活动和儿童活动。当我按下主活动中的一个按钮时,启动子活动。现在我想把一些数据发回主屏幕。我用了班德尔班,但它不起作用。它引发一些运行时异常。有什么解决办法吗?
查看完整描述

3 回答

?
幕布斯6054654

TA贡献1876条经验 获得超7个赞

根据具体情况,有几种方法可以实现你想要的。

最常见的场景(听起来就是这样)是,当一个子活动被用来获取用户输入时,比如从列表中选择联系人或在对话框中输入数据。在这种情况下,您应该使用startActivityForResult来启动你的孩子活动。

这为将数据发送回主活动提供了一个管道。setResult..setResult方法接受一个int结果值和一个传递回调用活动的意图。

Intent resultIntent = new Intent();// TODO Add extras or a data URI to this intent as appropriate.resultIntent.putExtra("some_key", 
"String data"); setResult(Activity.RESULT_OK, resultIntent);finish();

若要访问调用活动重写中返回的数据,请执行以下操作:onActivityResult..请求代码对应于在startActivityForResult调用,同时从子活动返回结果代码和数据意图。

@Overridepublic void onActivityResult(int requestCode, int resultCode, Intent data) {
  super.onActivityResult(requestCode, resultCode, data);
  switch(requestCode) {
    case (MY_CHILD_ACTIVITY) : {
      if (resultCode == Activity.RESULT_OK) {
        // TODO Extract the data returned from the child Activity.
        String returnValue = data.getStringExtra("some_key");
      }
      break;
    } 
  }}


查看完整回答
反对 回复 2019-06-19
  • 3 回答
  • 0 关注
  • 273 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信