java - 获取屏幕宽度 Android

标签 java android width screen density-independent-pixel

我想获取屏幕宽度,并将其设置为我的布局,它是水平 ScrollView 的 subview 。我正在这样做,但它使我的布局比我想要的更宽。

padding 是用 dips 定义的。

    Display display = getWindowManager().getDefaultDisplay();
    DisplayMetrics outMetrics = new DisplayMetrics ();
    display.getMetrics(outMetrics);

    float density  = getResources().getDisplayMetrics().density;    
    int padding = getResources().getDimensionPixelSize(R.dimen.padding); 
    layoutWidth = (int) ((outMetrics.widthPixels * density) - 2*padding);

最佳答案

 Display display = getWindowManager().getDefaultDisplay();
 DisplayMetrics outMetrics = new DisplayMetrics ();
 display.getMetrics(outMetrics);

 float density  = getResources().getDisplayMetrics().density;
 float dpHeight = outMetrics.heightPixels / density;
 float dpWidth  = outMetrics.widthPixels / density;

另请参阅:http://developer.android.com/guide/practices/screens_support.html#dips-pels

关于java - 获取屏幕宽度 Android,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21381214/

相关文章:

css - 如何使 float LI 平均共享其父 UL 宽度?

java - 将下拉选定的值传递给查询字符串 spring hibernate

java - java中接口(interface)和抽象接口(interface)的区别

php - 写入在线mysql数据库

javascript - 100% 宽度图像

javascript - 三.js线宽矛盾

java - Android(在 Scala 中): StackOverflowError depends on when to start a thread?

java - 允许多种预定义类型的集合

android - 在 Git 中创建分支以向 Android 应用程序添加新功能

android - 没有出现带有 Open-GL 的三角形?