resources.displayMetrics.heightPixels
时间: 2023-06-14 20:02:52 浏览: 67
这段代码是用来获取当前设备屏幕的高度(单位为像素)的。其中,`resources` 是一个 Android 应用程序中的资源管理器对象,而 `displayMetrics` 则是一个屏幕显示度量对象,它包含了屏幕的像素密度、屏幕高度、屏幕宽度等信息。`heightPixels` 则是其中一个属性,表示屏幕的高度像素数。
相关问题
private int getCurrentSwDp() { final Resources res = getContext().getResources(); final DisplayMetrics metrics = res.getDisplayMetrics(); final float density = metrics.density; final int minDimensionPx = Math.min(metrics.widthPixels, metrics.heightPixels); return (int) (minDimensionPx / density); }
这是一个 Android 应用程序中的方法,用于获取当前屏幕的最小宽度(sw)的值,以便根据屏幕大小和密度进行自适应布局。该方法使用了 Android 的 DisplayMetrics 类来获取屏幕的宽度和高度(以像素为单位),然后通过除以屏幕密度(以 dpi 为单位)来将像素转换为 dp。最后,方法返回屏幕最小宽度的值,以 dp 为单位。
final Resources res = getContext().getResources(); final DisplayMetrics metrics = res.getDisplayMetrics(); final int newSwDp = Math.max(Integer.parseInt(getText()), 320); final int minDimensionPx = Math.min(metrics.widthPixels, metrics.heightPixels); final int newDensity = DisplayMetrics.DENSITY_MEDIUM * minDimensionPx / newSwDp; final int densityDpi = Math.max(newDensity, 120); DisplayDensityConfiguration.setForcedDisplayDensity(Display.DEFAULT_DISPLAY, densityDpi);
这代码是用于在 Android 平台上设置显示密度的。它首先获取应用程序的 `Resources` 对象,然后使用该对象获取当前设备的显示度量信息 `DisplayMetrics`。接下来,它根据用户输入的值计算新的屏幕宽度 `newSwDp`,这里使用了 `Math.max` 方法来确保新的屏幕宽度不小于 320。然后,它计算新的密度 `newDensity`,这里使用了 `DisplayMetrics.DENSITY_MEDIUM` 常量来表示中等密度,然后根据新的屏幕宽度和最小宽度计算得出新的密度。最后,它使用 `Math.max` 方法来确保新的密度不小于 120,并将新的密度设置到 `DisplayDensityConfiguration` 类中的 `forcedDisplayDensity` 属性中,以强制应用程序使用指定的显示密度。
需要注意的是,这段代码可能会抛出 `NumberFormatException` 异常,如果用户输入的不是数字字符串时,将无法解析该字符串并导致该异常。此外,这里设置的密度值仅适用于当前应用程序,并不会影响其他应用程序或系统级别的界面元素。
相关推荐
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![apk](https://img-home.csdnimg.cn/images/20210720083646.png)