【问题标题】:Pass Bitmap data from one activity to another [duplicate]将位图数据从一个活动传递到另一个 [重复]
【发布时间】:2018-12-13 16:00:58
【问题描述】:

我的主要活动包含 imageview 和 editactivity 有一个按钮用于更改 imageview 中的图像。 我使用 Intent 来启动ActivityForResult 和 onActivityResult 代码如下所示

@Override
protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    if (requestCode == PICK_IMAGE_REQUEST && resultCode == RESULT_OK && data != null && data.getData() != null) {

        Uri uri = data.getData();


        try {
            bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(), uri);
            View mainactivity;


            ImageView imageprofile;
            mainactivity= LayoutInflater.from(this).inflate(R.layout.activity_main,null);
            imageprofile = (ImageView)mainactivity.findViewById(R.id.ProfileImage);


            imageprofile.setImageBitmap(bitmap);
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}

选择的图片没有设置好,请帮忙

【问题讨论】:

  • 我建议从上面的链接This answer
  • 你知道在提问之前你必须使用搜索,对吧?
  • 不,不是,我的代码有什么问题

标签: java android android-intent bitmap


【解决方案1】:

不应将位图传递给另一个活动。

传递整个位图需要大量内存

将 URI 传递给另一个活动并在需要时加载。希望对您有所帮助!

【讨论】:

  • 我应该如何传递uri,如果我使用intent我不想启动mainactivity,我只想传递uri
  • 把你的URI包装在Bundle中然后intent.putExtras(bundle)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-07-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多