首先,我知道使用inJustDecodeBounds
和inSample
大小的加載位圖大小接近所需大小的推薦方法。然而,這是一個相當寬泛的方法,只能獲得接近目標的圖像。縮放大位圖替代方法
我儘管已經利用options.inDensity
和options.inTargetDensity
誘騙本地加載程序將圖像更精確地縮放到所需的目標大小。基本上,我將options.inDensity
設置爲圖像的實際寬度,並將options.inTargetDensity
設置爲所需的寬度,並且確實獲得了所需尺寸的圖像(在此情況下縱橫比恰好保持相同)。然後在結果圖像上設置image.setDensity(DENSITY_NONE)
,並且全部顯示工作正常。
任何人都知道這種方法有什麼問題嗎?有關內存效率和圖像質量的任何想法?
聽起來很棒! (不能相信android devs編寫代碼,但沒有以合理和明智的方式公開功能)。 – 2013-02-16 19:42:45
聽起來很酷!你可以請一個樣品嗎? – 2013-02-16 19:52:06
我認爲雖然使用inSample更多的性能優化,不是嗎?因爲CPU/GPU更容易以這種方式處理採樣,不是嗎? – 2013-02-16 20:01:07