本來想在這三天寫一個手機相簿的程式 但是後來都被OOM佔住了時間
昨天一天都卡在bitmap 今天也花了一整天的時間在看書 都在看OOM處裡方式
絕大部分的書與網路資訊都給bitmap 繪圖的方式來處理
這是怎樣的情況呢 像是你拿一個4K的影片要播放但是電視不支援 也不能播放
這時候能怎樣做呢 就是轉檔
轉成電視可以看的規格再來播放 手機圖片也是這樣 當你圖片解析度太大 手機上絕大部分的記憶體 都被佔住的時候 系統就不會讓你使用 這時候就需要轉檔程式 重新將圖片解析度轉小 當比較不站住記憶體時 系統就會從新開放 這就是bitmap
先講說ImageView 要怎麼呈現bitmap
直接使用setImageBitmap放入bitmap物件就可以在ImageView上呈現
那bitmap物件 要怎麼製作
有兩種方式
一種是直接製作bitmap
另一種是利用bitmapFactory方式製作
我比較喜歡利用bitmapFactory方式製作 可以客製化
bitmapFactory.options有許多方法可以使用
可以直接參考
https://developer.android.com/reference/android/graphics/BitmapFactory.html
假設我現在一張圖片(/drawable/pic1.jpg)
假設想要把它縮小五倍
利用bitmapFactory.option.inSampleSize 來縮小比例
這樣應該就可以放入imageView中了