gpt4 book ai didi

android - 如何将位图图像从 Activity 传输到 Fragment

转载 作者:行者123 更新时间:2023-11-29 00:03:46 24 4
gpt4 key购买 nike

我的 Activity 中有一个位图图像,如下所示:

Bitmap image4 = BitmapFactory.decodeResource(getResources(), R.drawable.hello);
image1.setImageBitmap(image4);

我正在尝试使用以下代码以 fragment 形式传递此图像:

  FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
fragmentTransaction.addToBackStack(null);
Secondfrag yourFragment = new Secondfrag();
Bundle b = new Bundle();
b.putParcelable("BitmapImage",image4);

yourFragment.setArguments(b);
fragmentTransaction.add(R.id.frag, yourFragment, "FRAGMENT");
fragmentTransaction.commit();

并尝试像这样以 fragment 形式获取此图像:

Bundle b=this.getArguments();
String page=b.getString("BitmapImage");

image2.setImageURI(Uri.parse(page));

但是我的Fragment中没有图片显示。如何解决这个问题?

最佳答案

将其转化为字节数组

ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] byteArray = stream.toByteArray();

Bundle b = new Bundle();
b.putByteArray("image",byteArray);


// your fragment code
fragment.setArguments(b);

从目标 fragment 中获取值

byte[] byteArray = getArgument().getByteArrayExtra("image");
Bitmap bmp = BitmapFactory.decodeByteArray(byteArray, 0, byteArray.length);

归功于 https://stackoverflow.com/a/33797090/4316327

关于android - 如何将位图图像从 Activity 传输到 Fragment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42338892/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com