0

我真的在努力处理屏幕的像素密度。如何使我的应用程序在所有设备上看起来都一样?我认为答案可能是将单位从 dp 更改为 px:

public static int dpToPx(int dp) {
    return (int)(dp / Resources.getSystem().getDisplayMetrics().density);
}

但这似乎也不起作用,我似乎无法找到如何处理这个问题的答案。

4

1 回答 1

1

如果您在活动或片段中,则可以调用该getResources()方法。然后您可以通过以下方法将dp转换为px :

公式: px = dp * 密度

public static int dpToPx(int dp) {
    return (int)(dp * getResources().getDisplayMetrics().density);
}
于 2017-08-04T00:49:34.153 回答