@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.btn_adharFrontUploadId:
pickImage();
loadAdharFrontImage();
break;
case btn_adharBackUploadId:
pickImage();
loadAdharBackImage();
break;
}
}
它显示来自设备的两个不同的图像。我写的方法如下
private void loadAdharBackImage() {
new Thread() {
public void run() {
while (i++ < 1000) {
try {
runOnUiThread(new Runnable() {
@Override
public void run() {
iv_adharBack.setImageBitmap(decodedWebP);
}
});
sleep(300);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}.start();
}
private void loadAdharFrontImage() {
new Thread() {
public void run() {
while (i++ < 1000) {
try {
runOnUiThread(new Runnable() {
@Override
public void run() {
iv_adharFront.setImageBitmap(decodedWebP);
}
});
sleep(300);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}
}.start();
}
当我通过单击第一个按钮选择第一张图像时,它照常加载第一张图像视图,但是当我单击第二个按钮时,它会立即在第二张图像视图中加载第一张选择的图像,并且在选择第二张图像时,第一个图像视图也会更改为第二个选择的图像。请为此提供解决方案。我对android和编程非常陌生。任何帮助将不胜感激
谢谢您的支持...最终我得到了答复。无需使用我的问题中提到的runnable。在这里,我可以编写代码以获取不同imageViews的多个图像。再次感谢”
if (resultCode == RESULT_OK) {
assert data != null;
Uri imageUri = data.getData();
InputStream is = null;
try {
assert imageUri != null;
is = getContentResolver().openInputStream(imageUri);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
assert is != null;
BufferedInputStream bufferedInputStream = new BufferedInputStream(is);
Bitmap bitmap = BitmapFactory.decodeStream(bufferedInputStream);
ByteArrayOutputStream out = new ByteArrayOutputStream();
bitmap.compress(Bitmap.CompressFormat.WEBP, 60, out);
Bitmap decodedImage = BitmapFactory.decodeStream(new ByteArrayInputStream(out.toByteArray()));
switch (requestCode){
case 1:
iv_ApplAdharFront.setImageBitmap(decodedImage);
break;
case 2:
iv_ApplAdharBack.setImageBitmap(decodedImage);
break;
case 3:
iv_ApplIdCardFront.setImageBitmap(decodedImage);
break;
case 4:
iv_ApplIdCardBack.setImageBitmap(decodedImage);
break;
``