Skip to content

EvilBT/HDImageView

Repository files navigation

HDImageView

License Download

HD image view supporting pan and zoom, with very little memory usage and full featured image loading choices.

Requires Android SDK version 14 or higher.

Demo

Demo

Getting started

Step 1. Add the dependency

dependencies {
    implementation 'xyz.zpayh:hdimageview:3.0.1'

    // 以下可以选用

    // if you use Glide 4.x , you can compile :(如果你正在使用Glide 4.0或以上的版本,你可以添加下面的库)
    implementation 'xyz.zpayh:hdimageview-glide:3.0.0'
    implementation 'com.github.bumptech.glide:glide:4.9.0'

    // if you use Fresco 1.4.x , you can compile :(如果你正在使用Fresco 2.0.0或以上的版本,你可以添加下面的库)
    implementation 'com.facebook.fresco:fresco:2.0.0'
    
    implementation 'xyz.zpayh:hdimageview-fresco:3.0.0'
}

Step 2. Add the view to your layout XML

<xyz.zpayh.hdimage.HDImageView
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/image"
    android:layout_width="match_parent"
    android:layout_height="match_parent"/>

Step 3. Set URI to HDImageView

    //...
    HDImageView mImageView = (HDImageView) findViewById(R.id.image);

    mImageView.setImageURI("res:///"+R.drawable.panorama);
    // Or 
    ImageSource imageSource = ImageSourceBuilder.newBuilder()
                .setUri(R.drawable.panorama)
                .build();
    mImageView.setImageSource(imageSource);

Supported URIs

HDImageView supports images in a variety of locations.

HDImageView does not accept relative URIs. All URIs must be absolute and must include the scheme.

These are the URI schemes accepted:

TYPE SCHEME FETCH METHOD USED
File on network http://, https:// HttpURLConnection
File on device file:// FileInputStream
Content provider content:// ContentResolver
Asset in app asset:/// AsseManager
Resource in app res:// as in res:///12345 Resources.openRawResource

Like this:

mHDImageView.setImageURI("res:///"+R.drawable.panorama);
mHDImageView.setImageURI("asset://beauty.jpg");
mHDImageView.setImageURI("file:///sdcard/DCIM/IMG_001.JPG");
mHDImageView.setImageURI("http://7xi8d6.com1.z0.glb.clouddn.com/2017-04-16-17934400_1738549946443321_2924146161843437568_n.jpg");
//....

In the use of the process, please remember to add the appropriate permissions

About

Powered by Subsampling Scale Image View

Copyright 2016 David Morrissey, and licensed under the Apache License, Version 2.0. No attribution is necessary but it's very much appreciated. Star this project if you like it!