Pouvez-vous m'aider s'il vous plaît? J'ai essayé :
ImageButton imgbt=(ImageButton)findViewById(R.id.imgbutton);
Uri imgUri=Uri.parse("/data/data/MYFOLDER/myimage.png");
imgbt.setImageUri(imgUri);
mais je n'ai rien vu, simplement un bouton vide.
private Bitmap getImageBitmap(String url) {
Bitmap bm = null;
try {
URL aURL = new URL(url);
URLConnection conn = aURL.openConnection();
conn.connect();
InputStream is = conn.getInputStream();
BufferedInputStream bis = new BufferedInputStream(is);
bm = BitmapFactory.decodeStream(bis);
bis.close();
is.close();
} catch (IOException e) {
Log.e(TAG, "Error getting bitmap", e);
}
return bm;
}
CA devrait etre
Uri imgUri=Uri.parse("file:///data/data/MYFOLDER/myimage.png");
Celui-ci, ça va:
Bitmap bitmap = BitmapFactory.decodeFile(fullFileName);
imgProfileImage.setImageBitmap(bitmap);
J'ai également rencontré ce problème, il n'a montré rien .. J'ai vu quelque chose comme ça dans le développeur Android. Il n'a pas utilisé setImageURI.
private Bitmap getBitmapFromUri(Uri uri, Context context) throws IOException {
ParcelFileDescriptor parcelFileDescriptor =
context.getContentResolver().openFileDescriptor(uri, "r");
FileDescriptor fileDescriptor = parcelFileDescriptor.getFileDescriptor();
Bitmap image = BitmapFactory.decodeFileDescriptor(fileDescriptor);
parcelFileDescriptor.close();
return image;
}
Juste pour ta culture.
Il est préférable d'éviter de construire le chemin à la main. Essayez:
imgbt.setImageUri(Uri.fromFile(new File("/data/data/....")));
String imgPath = Environment.getDataDirectory() + "/data/com.wariyum.signage/files/"+ "221215-085656.619.72.jpg";
//Following lines was expected work, but don't really show up image always - no idea why
//imgZoom.setImageURI(Uri.parse(imgPath));
//following works always perfectly
File imgFile = new File(imgPath);
if(imgFile.exists()){
Bitmap myBitmap = BitmapFactory.decodeFile(imgFile.getAbsolutePath());
imgZoom.setImageBitmap(myBitmap);
}
Je l'ai résolu avec cadre. Ajout de cette ligne dans le classement:
implementation 'com.facebook.fresco:fresco:1.8.0'
Init singlton in application-class (ou une autre classe principale de votre application)
Fresco.initialize(applicationContext)
Et en fin de compte, utilisez-le.
XML:
<com.facebook.drawee.view.SimpleDraweeView
Android:id="@+id/avatar"
Android:layout_width="110dp"
Android:layout_height="110dp" />
Java:
avatar.setImageURI(user.getAvatarUrl())