Пример #1
0
  @Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    ButterKnife.inject(this);
    ivPhoto
        .getController()
        .getSettings()
        .setMaxZoom(5f)
        .setPanEnabled(true)
        .setZoomEnabled(true)
        .setDoubleTapEnabled(true)
        .setRotationEnabled(true)
        .setRestrictRotation(true)
        .setOverscrollDistance(0f, 0f)
        .setOverzoomFactor(2f)
        .setFillViewport(false)
        .setFitMethod(Settings.Fit.INSIDE)
        .setGravity(Gravity.CENTER);
    url = getIntent().getStringExtra("photo");
    if (url.substring(url.lastIndexOf(".") + 1).equals("gif"))
      Glide.with(this)
          .load(url)
          .asGif()
          .diskCacheStrategy(DiskCacheStrategy.SOURCE)
          .listener(
              new RequestListener<String, GifDrawable>() {
                @Override
                public boolean onException(
                    Exception e,
                    String model,
                    Target<GifDrawable> target,
                    boolean isFirstResource) {
                  return false;
                }

                @Override
                public boolean onResourceReady(
                    GifDrawable resource,
                    String model,
                    Target<GifDrawable> target,
                    boolean isFromMemoryCache,
                    boolean isFirstResource) {
                  progressBar.setVisibility(View.GONE);
                  return false;
                }
              })
          .into(ivPhoto);
    else
      Glide.with(this)
          .load(url)
          .listener(
              new RequestListener<String, GlideDrawable>() {
                @Override
                public boolean onException(
                    Exception e,
                    String model,
                    Target<GlideDrawable> target,
                    boolean isFirstResource) {
                  return false;
                }

                @Override
                public boolean onResourceReady(
                    GlideDrawable resource,
                    String model,
                    Target<GlideDrawable> target,
                    boolean isFromMemoryCache,
                    boolean isFirstResource) {
                  progressBar.setVisibility(View.GONE);
                  return false;
                }
              })
          .into(ivPhoto);
  }