我有一個listivew顯示一堆圖像。我正在使用Universal Image Loader將這些圖像從文件加載到圖像瀏覽。如何避免圖像在列表視圖中閃爍
這個圖像有不同的尺寸,我希望他們所有人都有相同的寬度,但相對於每個圖像寬高比不同的高度。
要做到這一點,我已經嘗試設置下面以我的ImageView
<ImageView
android:layout_width = "400dp"
android:layout_height="wrap_content"
android:scaleType="centerCrop"
android:adjustViewBounds="true"/>
這種方法的問題是,有很多閃爍的,當一個滾動,因爲imageview的高度列表視圖中是不知道先進和圖像必須首先使用我的寬度來計算每個圖像高度的寬高比。
如何預先計算每個圖像高度而不是讓imageview處理它?
如果我有一個400×700的圖像,並且我希望imageview的寬度是300px,那麼我如何使用圖像尺寸計算imageview的高度並保持圖像寬高比?這可以幫助避免一個滾動列表視圖閃爍。
你爲什麼不設定一個固定的高度呢?並使用像一個相當淡入的動畫,使其更smoth?配給由scaleType參數保存:) –
@ An-droid我不想設置固定的高度。我正試圖實現imageview在後臺執行的操作。如果您將固定寬度和高度設置爲**包裝內容**,則會縮放圖像並計算高度。但我想提前計算高度,以便用戶在滾動瀏覽圖像時不會看到圖像視圖的醜陋調整大小 –
在像Spotify這樣衆所周知的應用程序中,大多數imageView只是設置了固定大小或匹配以及scaleType設置爲centerCrop。它有什麼作用 ?圖像將填充您提供給它的所有空間,並將根據她的身高按比例調整大小。這是很好的,因爲你不知道哪些設備用戶將使用你的應用程序,密度...使用固定寬度,非常髒和危險我認爲 –