編輯:關於Android編程
/** * 將圖片文件原比例縮略,並使其不超過最大寬、高 * @param path : 圖片文件 * @param requestW : 縮略後最大寬度 * @param requestH : 縮略後最大高度 * @return 縮略後圖片對象 */ public static Bitmap getThumbnailByReq(String path,int requestW, int requestH){ BitmapFactory.Options options = new Options(); // 僅解析源圖大小信息,所以僅將源圖邊界信息載入內存,而非完整源圖,從而節省內存 options.inJustDecodeBounds = true; BitmapFactory.decodeFile(path, options); int outW = options.outWidth;// 源圖寬度 int outH = options.outHeight;// 源圖高度 // 設定縮略倍數 if(outW > requestW || outH > requestH){ int radioW = Math.round((float)outW/requestW); int radioH = Math.round((float)outH/requestH); options.inSampleSize = radioW > radioH ? radioW : radioH; }else{ options.inSampleSize = 1; } // 需解析出正確圖片對象,所以將縮略後的圖片完整加入內存 options.inJustDecodeBounds = false; Bitmap bitmap = BitmapFactory.decodeFile(path, options); return bitmap; }
這次練習的是圖片的三級緩存處理。主要是避免下載圖片過大過多導致的內存洩露的問題,我們要將下載的圖片進行緩存。緩存主要分三級,是首先存儲再強引用LruCache中,存不下之
Android開發之Fragment學習 1.簡介: Fragment是Android 3.0引入的新API。 Fragment代表了 Activity的子模塊,因此可
一、前言在Android客戶端開發中,使用網絡請求是非常常見的事情,一般我們使用HttpURLConnection是可以滿足需求的,不過隨著業務邏輯復雜,依然還是有很多不
ListView是安卓中非常常用的一個控件。安卓設計使用Adapter來對ListView進行管理。但是系統提供的Adapter無法滿足一些復雜的顯示情況,這個時候我們就