有人可以告訴我Android是如何計算屏幕密度的?Android屏幕密度計算
我的問題是我有一個具有480x800分辨率和7英寸對角線屏幕的設備(ODYS空間) 如果我計算它的密度,我得到的值是133 DPI,但Android(2.2和2.3)報告它像「MEDIUM 「密度設備(160 DPI)
我與多屏幕支持戰鬥,所以我認爲133 DPI將被報告像」低「比」中「,所以現在我的屏幕布局看起來很愚蠢在這個媒體報道的設備。
我檢查設備與這樣的代碼:
DisplayMetrics dMetrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dMetrics);
int d=dMetrics.densityDpi;
如果我在配置的虛擬設備(480x800/7「和133 DPI)上運行該代碼,那麼我的密度= 120。
在真實的設備上,它爲什麼說160代替?
如果您正在尋找賞金,請參閱Peter O.的答案和我的評論。這裏的要點是Android如何計算密度,而不是如何檢索設置。例如,LDPI和MDPI,MDPI和HDPI之間的截斷點在哪裏等等......爲什麼給定的數字四捨五入到較高的密度而不是較低的相鄰密度,等等。再次,在AVD設備編輯器中可以看到一個答案,但到目前爲止,我還沒有找到確定的,確定的,正確的答案。 – davidcesarino 2014-09-18 02:34:56
DPI - 設備獨立像素 不能有自定義值,因爲有starndards 0.75 - LDPI - 120 dpi的 1.0 - MDPI - 160 dpi的 1.5 - HDPI - 240 dpi的 2.0 - xhdpi - 320 dpi的 3.0 - xxhdpi - 480 dpi 4.0 - xxxhdpi - 640 dpi – 2014-09-20 15:46:34