Verwenden glide bitmap laden zur Bildansicht
Möchte ich nutzen, Glide bitmap laden um die Bildansicht nach dem zuschneiden und re-Bearbeiten einer bitmap.
Möchte ich nicht verwenden ImageView.setImageBitmap(bitmap);
weil ich bin laden viele Bilder und es nehmen könnte, einige Speicher, obwohl die Bilder klein in der Größe, die ich brauchen nur zu verwenden Glide, weil ich weiß, es optimiert die Bild-caching.
Lese ich diese post, aber ich habe nicht ganz verstanden, seine Lösung, als ich versucht habe, es umzusetzen. Also vielleicht hat ja jemand eine sauberere und leicht verständliche Lösung.
Dies ist mein code, der nimmt ein Bild und erstellt eine bitmap aus.
Ich brauche, um zu verwenden, gleiten statt ImageView.setImageBitmap(bitmap);
.
new AsyncTask<String, Void, Void>() {
Bitmap theBitmap = null;
Bitmap bm = null;
@Override
protected Void doInBackground(String... params) {
String TAG = "Error Message: ";
try {
//Load the image into bitmap
theBitmap = Glide.
with(mContext).
load("http://example.com/imageurl").
asBitmap().
into(-1, -1).
get();
//resizes the image to a smaller dimension out of the main image.
bm = Bitmap.createBitmap(theBitmap, 0, 0, 210, 80);
} catch (final ExecutionException e) {
Log.e(TAG, e.getMessage());
} catch (final InterruptedException e) {
Log.e(TAG, e.getMessage());
} catch (final NullPointerException e) {
//
}
return null;
}
@Override
protected void onPostExecute(Void dummy) {
if (null != theBitmap) {
//Set image to imageview.
**//I would like to Use Glide to set the image view here Instead of .setImageBitmap function**
holder.mImageView.setImageBitmap(bm);
holder.mImageView.setAdjustViewBounds(true);
holder.mImageView.setScaleType(ImageView.ScaleType.CENTER_CROP);
}
}
}.execute();
- Können Sie mir sagen, was ist dein problem? Bitmap ist null oder Ihren
ImageView
zeigen weiße Quadrat? - Nein, die bitmap ist nicht null, ich brauche, um zu verwenden, Gleiten Sie auf set-Bitmap-Bild in Bildansicht anstatt es direkt.
- Grund ist, weil ich bin laden viele Bilder, die Speicher-caching. Verstehen Sie, was ich meine?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Brauchen Sie nicht
AsyncTask
laden Bild mit Glide. Glide Bild laden asynchronys.Versuchen Sie, verwenden Sie diesen code:
Drawable
mit top-Ausrichtung in Ordnung.