gpt4 book ai didi

java - 在Android中分别选取两张图片

转载 作者:行者123 更新时间:2023-12-01 17:43:00 26 4
gpt4 key购买 nike

我正在制作一个android应用程序,我需要两个上传图像并将它们保存到服务器。 enter image description here

当我从第一个按钮中选择它时,它会出现在第二个按钮中,但我需要两个不同的图像。

photoUpload.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
chooseImage();
}
});

photoUpload2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
chooseImage();
}
});
}

private void chooseImage() {
Intent openGalleryIntent = new Intent();
openGalleryIntent.setType("image/*");
openGalleryIntent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(openGalleryIntent, "Select Picture"), GALLERY_REQUEST_CODE);
}

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

if (requestCode == GALLERY_REQUEST_CODE && resultCode == RESULT_OK && data != null && data.getData() != null) {
Uri uri = data.getData();

try {
Bitmap bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(), uri);
imageView.setImageBitmap(bitmap);
imageView2.setImageBitmap(bitmap);
} catch (IOException e) {
e.printStackTrace();
}

}

}

最佳答案

您收到此消息是因为您将选定的图像设置为 imageview 1 和 2。要解决此问题,您可以使用不同的请求代码或使用 boolean 变量来区分图像 1 和 2 的上传

定义两个 boolean 变量来区分图片1和2的上传

Boolean first = false, second = false;


@Override
public void onClick(View v) {
first = true;
chooseImage();
}
});

photoUpload2.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
second = true;
chooseImage();
}
});
}

private void chooseImage() {
Intent openGalleryIntent = new Intent();
openGalleryIntent.setType("image/*");
openGalleryIntent.setAction(Intent.ACTION_GET_CONTENT);
startActivityForResult(Intent.createChooser(openGalleryIntent, "Select Picture"), GALLERY_REQUEST_CODE);
}

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

if (requestCode == GALLERY_REQUEST_CODE && resultCode == RESULT_OK && data != null && data.getData() != null) {
Uri uri = data.getData();

try {
Bitmap bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(), uri);
if(first)
{
imageView.setImageBitmap(bitmap);
first = false;
}else if(second)
{
imageView2.setImageBitmap(bitmap);
second = false;
}

} catch (IOException e) {
e.printStackTrace();
}

}

}

您可以使用库从图库中选择多张图像。有许多可用的库,其中之一是 https://github.com/ParkSangGwon/TedPicker

希望这对您有帮助!快乐编码

关于java - 在Android中分别选取两张图片,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58729836/

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