Android 圖片處理縮放功能
PS:在開發(fā)中我們會(huì)遇到一些圖片處理問題,比如說緩存圖片了、限制圖片大小了、查看圖片了等。上一篇文章介紹了圖片的全景效果查看,今天介紹一個(gè)圖片縮放,我們?nèi)绻袝r(shí)間的話,可以自己寫一個(gè)屬于自己的庫,里面會(huì)用到view的按壓、事件分發(fā)、手勢等一些知識(shí),如果沒有時(shí)間或者不會(huì)其他的方法,不妨來看看這個(gè)PhotoView。這是一個(gè)圖片縮放庫,對(duì)于這樣的還有GitView等,下面我就介紹一些用法。
功能:
- 正常加載圖片
- 雙擊放大
- 手勢隨意縮放
- 隨意拖動(dòng)查看圖片每一個(gè)角落
- 結(jié)合其他設(shè)置可實(shí)現(xiàn)翻轉(zhuǎn)
效果圖

1:本地圖片加載
<ImageView
android:layout_width="match_parent"
android:layout_height="300dp"
android:id="@+id/id_loc"
android:scaleType="fitXY"
/>
<uk.co.senab.photoview.PhotoView
android:layout_width="match_parent"
android:layout_height="400dp"
android:src="@mipmap/ic_launcher"
android:id="@+id/id_myimg"/>
第一種方法:
//本地加載方法一
// 設(shè)置圖片
Drawable bitmap = getResources().getDrawable(R.mipmap.ic_launcher);
loc.setImageDrawable(bitmap);
// 連接在photoview中
PhotoViewAttacher mAttacher = new PhotoViewAttacher(loc);
mAttacher.update();//更新
第二種
//本地方法加載二
PhotoViewAttacher mAttacher;
mAttacher = new PhotoViewAttacher(loc);
iv.setImageBitmap(bitmap);
Glide.with(this).load(R.mipmap.ic_launcher).asBitmap().into(loc);
mAttacher.update();
2:網(wǎng)絡(luò)圖片加載
對(duì)于網(wǎng)絡(luò)也是可以用ImageView和PhotoView兩種
把ImageView或者PhotoView的對(duì)象名直接添加到display中就OK 了。
//加載網(wǎng)絡(luò)圖片
ImageLoader loader= ImageLoader.getInstance();
loader.init(ImageLoaderConfiguration.createDefault(ImageTest.this));//loader初始化
loader.displayImage("https://ss0.bdstatic.com/94oJfD_bAAcT8t7mm9GUKT-xh_/timg?image&quality=100&size=b4000_4000&sec=1529211252&di=1414331e22239ecb5730cbbd0f3793eb&src=http://pic154.nipic.com/file/20180114/26629113_090329120799_2.jpg",loc);//展示圖片
下面我們可以看一下源碼,其實(shí)他也是繼承了ImageView
/**
* Adds display image task to execution pool. Image will be set to ImageView when it's turn. <br/>
* Default {@linkplain DisplayImageOptions display image options} from {@linkplain ImageLoaderConfiguration
* configuration} will be used.<br />
* <b>NOTE:</b> {@link #init(ImageLoaderConfiguration)} method must be called before this method call
*
* @param uri Image URI (i.e. "http://site.com/image.png", "file:///mnt/sdcard/image.png")
* @param imageView {@link ImageView} which should display image
* @throws IllegalStateException if {@link #init(ImageLoaderConfiguration)} method wasn't called before
* @throws IllegalArgumentException if passed <b>imageView</b> is null
*/
public void displayImage(String uri, ImageView imageView) {
displayImage(uri, new ImageViewAware(imageView), null, null, null);
}
總結(jié)
以上所述是小編給大家介紹的Android 圖片處理縮放功能,希望對(duì)大家有所幫助,如果大家有任何疑問請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
Android 10 啟動(dòng)Init進(jìn)程解析
這篇文章主要為大家介紹了Android 10 啟動(dòng)Init進(jìn)程解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10
利用百度地圖Android sdk高仿微信發(fā)送位置功能及遇到的問題
這篇文章給大家介紹了利用百度地圖Android sdk高仿微信發(fā)送位置功能,在實(shí)現(xiàn)此功能的時(shí)候遇到點(diǎn)小問題,下面小編給大家列出來,需要的朋友參考下吧2017-12-12
Android定時(shí)器和倒計(jì)時(shí)實(shí)現(xiàn)淘寶秒殺功能
這篇文章主要為大家詳細(xì)介紹了Android定時(shí)器和倒計(jì)時(shí)實(shí)現(xiàn)淘寶秒殺功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02
Android編程實(shí)現(xiàn)任務(wù)管理器的方法
這篇文章主要介紹了Android編程實(shí)現(xiàn)任務(wù)管理器的方法,涉及Android針對(duì)程序與進(jìn)程操作的相關(guān)技巧,需要的朋友可以參考下2015-12-12
Android實(shí)現(xiàn)購物車整體頁面邏輯詳解
這篇文章主要為大家詳細(xì)介紹了Android實(shí)現(xiàn)購物車的整體頁面邏輯,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11
Android Shape屬性創(chuàng)建環(huán)形進(jìn)度條
這篇文章主要介紹了Android Shape屬性創(chuàng)建環(huán)形進(jìn)度條的實(shí)例代碼,代碼簡單易懂,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11

