- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我想获取设备屏幕的 dpi,但是当我使用时:
DisplayMetrics m = getResources().getDisplayMetrics();
float den = m.density;
我得到完整的 DisplayMetrics
对象为零(我在调试中看到它)。在我的模拟器(android 2.3)和我的手机(Htc Legend android 2.1 update 1)中也是如此。代码位于我的 Activity 类(extends Activity
)然后
WebView.setWebChromeClient(new MyWebChromeClient() {
public void onProgressChanged(WebView view, int progress) {
DisplayMetrics m = getResources().getDisplayMetrics();
float den = m.density;
我该如何解决?
谢谢你,
波阿斯
最佳答案
取自here :
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
switch(metrics.densityDpi){
case DisplayMetrics.DENSITY_LOW:
break;
case DisplayMetrics.DENSITY_MEDIUM:
break;
case DisplayMetrics.DENSITY_HIGH:
break;
}
尝试一下,然后返回这里查看结果:)
干杯
关于android - DisplayMetrics 返回零,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17364018/
我想了解 DisplayMetrics.DENSITY_DEVICE_STABLE Android 上的属性。 来自 Android 10 兼容性定义(和 Android 7 兼容性定义): [C-0
有没有人注意到这个问题并解决了在两个方向上获得一致的绝对显示尺寸的方法? 示例,Nexus 5 (5.0.1): 纵向:宽度 = 1080 高度 = 1776 横向:宽度 = 1794 高度 = 10
我正在开发一个自定义类,以帮助调整其他类的布局大小。 这是类 public class LayoutResize{ Context context; DisplayMetrics di
我正在尝试访问一些 DisplayMetrics 数据,但一切都返回零。这就是我初始化显示指标对象的方式: DisplayMetrics display = new DisplayMetrics();
我想获取设备屏幕的 dpi,但是当我使用时: DisplayMetrics m = getResources().getDisplayMetrics();
我有两种不同的平板电脑: 10.1 英寸平板电脑 - 1280x800 @ ~149dpi 15.6 英寸平板电脑 - 1920x1080 @ ~156dpi 就实际物理(现实世界)规范而言,这些平板
我有一个 Samsung Galaxy S4 Active 当我在Android上执行时,如下代码: DisplayMetrics dm = new DisplayMetrics(); getWind
在 Debug模式下, metrics.xdpi 和 .ydpi 都返回 160。但是,我有一部 5"1920x1080 手机。我做错了什么? DisplayMetrics metrics =
我正在开发一个 Android 游戏(在 libgdx 中),但有一个问题:我需要获取设备的 dpi 以获得更好的游戏体验。所以我尝试使用 DisplayMetrics。 DisplayMetrics
小问题 DisplayMetrics.densityDpi 在 root 设备上似乎为零。 长题 我在我的应用中使用了以下代码: public static int getIconSize(Activ
我使用 displaymetrics 来获取设备的屏幕尺寸。在智能手机中效果很好,但在平板电脑中它返回屏幕宽度和高度的 2/3。谁能告诉我这是为什么? 这是代码: DisplayMetrics met
第一种方法: DisplayMetrics displayMetrics = this.getResources().getDisplayMetrics(); int deviceHeight = d
我有一个自定义 View ,我正在尝试针对不同的屏幕尺寸进行测试,但我无法找到有关如何在单元测试中正确模拟显示宽度的文档或示例。 这是我如何尝试使用它的示例: private CustomTextVi
我刚开始使用 Android 编程,但在以下代码中收到错误: DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefau
我想了解 Android 中的 sp 单元,但我无法真正弄清楚它是如何工作的。 documentation说: sp Scale-independent Pixels - This is like t
获取 DisplayMetrics 的正确方法是什么,即获取屏幕/显示信息,例如 density 或 xdpi? 我问是因为我看到了两种解决方法: 第一: DisplayMetrics met
我试过这个...... DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().ge
我正在设计我的第一个 Android 应用程序,其中一部分需要获取屏幕尺寸。我以标准方式使用 DisplayMetrics 对象: DisplayMetrics metrics = new Displ
编辑 2 编辑 覆盖 attachBaseContext 方法以更新 Activity 中的上下文 protected override void AttachBaseContext(Context
我需要在 Android AppWidget 中确定运行时的屏幕密度。我已经设置了一个 HDPI 模拟器设备 (avd)。如果设置一个常规的可执行项目,并将此代码插入到 onCreate 方法中: D
我是一名优秀的程序员,十分优秀!