Skip to content

Instantly share code, notes, and snippets.

@griajobag
Created June 29, 2016 08:11
Show Gist options
  • Save griajobag/e042ed57961bb80317d6b0572c1b2dc8 to your computer and use it in GitHub Desktop.
Save griajobag/e042ed57961bb80317d6b0572c1b2dc8 to your computer and use it in GitHub Desktop.
image loader perbandingan
package com.example.putuguna.imageprocessing;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.ImageView;
import android.widget.ProgressBar;
import android.widget.Toast;
import com.bumptech.glide.Glide;
import com.bumptech.glide.load.engine.DiskCacheStrategy;
import com.bumptech.glide.load.resource.drawable.GlideDrawable;
import com.bumptech.glide.request.RequestListener;
import com.bumptech.glide.request.target.Target;
import com.squareup.picasso.Picasso;
public class MainActivity extends AppCompatActivity {
private ImageView imageViewGlide;
private ProgressBar progress;
private ImageView imageViewPicasso;
private ProgressBar progressBarPicasso;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageViewGlide = (ImageView) findViewById(R.id.imageview_glide);
imageViewPicasso = (ImageView) findViewById(R.id.imageview_picasso);
progress = (ProgressBar) findViewById(R.id.progress);
progressBarPicasso = (ProgressBar) findViewById(R.id.progress_picasso);
String url = "http://api.androidhive.info/images/glide/medium/deadpool.jpg";
/**
* Load image dengan menggunakan Picasso
*/
Picasso.with(this).load(url)
.fit()
.centerCrop()
.into(imageViewPicasso, new com.squareup.picasso.Callback(){
@Override
public void onSuccess() {
progressBarPicasso.setVisibility(View.GONE);
}
@Override
public void onError() {
progressBarPicasso.setVisibility(View.GONE);
Toast.makeText(MainActivity.this, "Failed Load Data Picasso", Toast.LENGTH_LONG).show();
}
});
/**
* load image dengan menggunakan Glide
*/
Glide.with(this).load(url)
.listener(new RequestListener<string, glidedrawable="">() {
@Override
public boolean onException(Exception e, String model, Target<glidedrawable> target, boolean isFirstResource) {
progress.setVisibility(View.GONE);
Toast.makeText(MainActivity.this, "Failed Load Data Glide", Toast.LENGTH_LONG).show();
return false;
}
@Override
public boolean onResourceReady(GlideDrawable resource, String model, Target<glidedrawable> target, boolean isFromMemoryCache, boolean isFirstResource) {
progress.setVisibility(View.GONE);
return false;
}
})
.thumbnail(0.5f)
.crossFade()
.diskCacheStrategy(DiskCacheStrategy.ALL)
.into(imageViewGlide);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment