- 我有一個ListView,每一行都有一個ImageView。
- 這些圖像在單獨的線程中下載,然後附加到UI線程中的ImageView。
- 我下載的圖像是92 X 136 px。我使用BitmapFactory將這些圖像縮小到每個像素50 x 100像素。
- 我希望這些圖像在不同的屏幕尺寸下看起來相同。我明白,在高密度屏幕上,這些圖像看起來可能更小,而密度更低的屏幕可能看起來更大。
通常情況下,我們會將這些圖像放在mdpi,hdpi等文件夾中,但在這種情況下,圖像會動態下載並以編程方式進行縮放。顯示不同屏幕位圖android
有人可以指出我正確的方向,我應該做什麼。我不需要任何代碼..只是一些算法中應該做的......
0
A
回答
0
的一種方式是在DP比例是這樣的:
int height = (int) TypedValue.applyDimension(TypedValue.COMPLEX_UNIT_DIP, <HEIGHT>, getResources().getDisplayMetrics());
另一種方法是硬編碼在ImageView的尺寸以dp或指定其高度得到屏幕指標和計算的一定百分比後programaticaly寬度要填充的寬度/高度(儘管我認爲在佈局中只使用固定的dp就足夠了,如果需要,您可以使用值/維度來標記視圖的大小)。然後將一個縮放類型(如fitXY
或centerCrop
)分配給imageView以填充整個內容區域。
0
也許在XML文件夾中進行適當的密度定義的ImageView的大小,並設置有scalingType屬性像fitXY?
相關問題
- 1. 在不同屏幕上定位位圖
- 2. 針對不同顯示器和屏幕密度的Android圖標
- 3. Android不同屏幕
- 4. 屏幕頂部的顯示圖標 - Android
- 5. QRCODE圖像顯示Android手機屏幕
- 6. Android屏幕定位意圖
- 7. Android WindowManager顯示不同設備的相同屏幕尺寸
- 8. Android Imageview在屏幕旋轉後顯示舊位圖
- 9. 在不同屏幕上顯示C#WinForm
- 10. XNA - 如何顯示不同的屏幕?
- 11. 初始屏幕不顯示在android
- 12. Android Facebook SDK不顯示登錄屏幕
- 13. Android - 屏幕頂部不顯示
- 14. Android顯示圖像,同時保持屏幕高寬比
- 15. 在android地圖上顯示藍色屏幕而不是地圖
- 16. 谷歌地圖不顯示在屏幕
- 17. 不顯示它的屏幕截圖
- 18. JLabel在屏幕上不顯示圖像
- 19. PhantomJS屏幕截圖不顯示文本
- 20. 圖形對象不顯示到屏幕
- 21. Android:不同分辨率的屏幕上的位圖縮放
- 22. 32位bmp圖像不顯示在pygame的屏幕上
- 23. 保存OpenTK屏幕的位圖,但QuickFont文本不顯示?
- 24. Android:重新進入應用程序顯示不同的屏幕
- 25. 在Android的不同屏幕尺寸上顯示卡片組合
- 26. Android不同屏幕支持
- 27. XIB與iPhone相比顯示不同位置的對象(包含屏幕截圖)
- 28. iOS GameOver屏幕不顯示
- 29. CSS3 - transform:translateY(屏幕不顯示)
- 30. Android:不同屏幕的不同佈局