Android Open Source - InstagramViewer Dynamic Image View






From Project

Back to project page InstagramViewer.

License

The source code is released under:

MIT License

If you think the Android project InstagramViewer listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.

Java Source Code

package com.codepath.instagramviewer;
/*from ww w  .  j  a  v  a2  s  . c om*/
import android.content.Context;
import android.graphics.drawable.Drawable;
import android.util.AttributeSet;
import android.view.View.MeasureSpec;
import android.widget.ImageView;

public class DynamicImageView extends ImageView {

    public DynamicImageView(final Context context, final AttributeSet attrs) {
        super(context, attrs);
    }

    @Override
    protected void onMeasure(final int widthMeasureSpec, final int heightMeasureSpec) {
        final Drawable d = this.getDrawable();

        if (d != null) {
            // ceil not round - avoid thin vertical gaps along the left/right edges
          final int width = MeasureSpec.getSize(widthMeasureSpec);
          final int height = (int) Math.ceil(width * (float) d.getIntrinsicHeight() / d.getIntrinsicWidth());
            this.setMeasuredDimension(width, height);
        } else {
            super.onMeasure(widthMeasureSpec, heightMeasureSpec);
        }
    }
}




Java Source Code List

com.codepath.instagramviewer.DynamicImageView.java
com.codepath.instagramviewer.InstagramPhotoAdapter.java
com.codepath.instagramviewer.InstagramPhoto.java
com.codepath.instagramviewer.PhotosActivity.java
com.codepath.instagramviewer.RoundedImageView.java