2011-04-27 59 views
6

我正在通過後臺服務發出通知。在通知我顯示圖像時,圖像尺寸是15 * 15。但是當顯示圖像時,它會自動延伸至較大尺寸,因此變得模糊不清。我沒有在我的程序中指定圖像大小。爲什麼會發生這種情況Android通知圖標

回答

0

這是因爲在Java中指定尺寸時,它會自動被視爲像素值。

您必須在某個地方實施一個輔助方法,最好是輔助類,它根據提供的像素值計算並返回與密度無關的像素值。

方程是px = dip * (density/160)從中我們得到這個結果dip = px/(density/160)

這個答案here其實更好。

8

小圖標

Guildlines說2 4x24,即mdpi。

應用換算dp*density/160你得到這些像素分辨率:

LDPI 18×18
MDPI 24×24
華電國際 36X36
xhdpi 48×48

(實際上該準則現在名單這4個維度)

動態調整的大圖標

如果要創建圖像或調整圖像大小,以解決大通知圖像區域,你可以得到的像素尺寸,像這樣:

int width = resources.getDimensionPixelSize(android.R.dimen.notification_large_icon_width); 
int height = resources.getDimensionPixelSize(android.R.dimen.notification_large_icon_height); 

https://developer.android.com/reference/android/R.dimen.html#notification_large_icon_height