Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/214.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何将数据从一个活动发送到另一个活动?_Android_Android Intent_Uri - Fatal编程技术网

Android 如何将数据从一个活动发送到另一个活动?

Android 如何将数据从一个活动发送到另一个活动?,android,android-intent,uri,Android,Android Intent,Uri,我有两节课。一个是一个叫做 “registerProductActivity.java”我通过图像视图从图库中拾取图像(使用Intent.ACTION\u pick),并通过“onActivityResult”方法将其存储到Uri(Uri=data.getData())中。但是,我需要将此URI发送到另一个活动的片段中,以将此图像显示到该片段中的ListvView中。有线索吗,伙计们?我知道这里有一些知名人士 下面的代码段是我从registerProductActivity.java获取图像的地

我有两节课。一个是一个叫做
“registerProductActivity.java”
我通过
图像视图
从图库中拾取图像(使用
Intent.ACTION\u pick
),并通过
“onActivityResult”
方法将其存储到Uri(
Uri=data.getData()
)中。但是,我需要将此URI发送到另一个活动的片段中,以将此图像显示到该片段中的ListvView中。有线索吗,伙计们?我知道这里有一些知名人士

下面的代码段是我从registerProductActivity.java获取图像的地方

....

imagemProduto.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            Intent intent = new Intent(Intent.ACTION_PICK);
            intent.setType("image/*");
            startActivityForResult(intent, GALLERY_INTENT);
        }
    });
}

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if(requestCode == GALLERY_INTENT && resultCode == RESULT_OK){

        uri = data.getData(); // declare as global var into this class
        imagemProduto.setImageURI(uri);


    }
}

....
之后,我需要将这个URI发送到另一个名为“MainActivity”的活动的片段中,该片段将产品列表显示到listView中。在这个“MainActivity.java”中,我使用了一个显示两个片段的SlidingTab,其中一个有一个ListView,它显示了展示产品的自定义视图。我想我必须将这个URI传递给我的自定义适配器,以便将映像设置到我的listView中。所以,我不知道该怎么做。下面有一个图片链接,可以更好地解释


您可以使用捆绑和意图发送数据,如下所示:

Intent mIntent = new Intent(this, Example.class);
Bundle extras = mIntent.getExtras();
extras.putString(key, value);  
MainActivity的每个子片段都可以直接访问bundle值:

Intent mIntent = getActivity().getintent();
Bundle extras= mIntent.getExtras();
String str= extras.getString(key);

您可以使用Bundle和Intent发送数据,如下所示:

Intent mIntent = new Intent(this, Example.class);
Bundle extras = mIntent.getExtras();
extras.putString(key, value);  
MainActivity的每个子片段都可以直接访问bundle值:

Intent mIntent = getActivity().getintent();
Bundle extras= mIntent.getExtras();
String str= extras.getString(key);

MainActivity是调用RegisterProductActivity的活动还是您将在RegisterProductActivity的onActivityResult中启动MainActivity?您是否有关于活动和片段关系的图形说明。嗨,Sakura,tks。MainActivity和RegisterProductActivity不是同一个活动。intent pick操作和onActivityResult方法位于RegisterProductActivity内。我将发布一个图形说明。我已经发布了一个图形说明。TKSMainActivity是调用RegisterProductActivity的主活动还是您将在RegisterProductActivity的onActivityResult中启动主活动?您是否有关于活动和片段关系的图形说明。嗨,Sakura,tks。MainActivity和RegisterProductActivity不是同一个活动。intent pick操作和onActivityResult方法位于RegisterProductActivity内。我将发布一个图形说明。我已经发布了一个图形说明。Tks