// 获取屏幕的宽度、高度
Display defDip = getWindowManager().getDefaultDisplay();
int disWidth = defDip.getWidth();
int disHeight = defDip.getHeight();
Log.i("TAG", "disWidth:" + disWidth + ",disHeight:" + disHeight);
//获取屏幕分辨率
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
float horiDpi = dm.xdpi; // 屏幕的水平分辨率
float vertDpi = dm.ydpi; // 屏幕的垂直分辨率
// 获得android系统对于目前的屏幕分辨率的分类:
int screenSizeClass = dm.densityDpi;
Log.i("TAG", "screenSizeClass..." + screenSizeClass);
switch (screenSizeClass) {
case DisplayMetrics.DENSITY_LOW: // 屏幕属于低分辨率,运行对应的代码
Log.i("TAG", "低分辨率");
break;
case DisplayMetrics.DENSITY_MEDIUM: // 中分辨率
Log.i("TAG", "中分辨率");
break;
case DisplayMetrics.DENSITY_HIGH: // 高分辨率
Log.i("TAG", "高分辨率");
break;
case DisplayMetrics.DENSITY_XHIGH: // 超高分辨率
Log.i("TAG", "超高分辨率");
break;
case DisplayMetrics.DENSITY_XXHIGH:
Log.i("TAG", "超超高分辨率");
break; default:
break;
}
        // 判断屏幕尺寸
final int screenSize = getResources().getConfiguration().screenLayout
& Configuration.SCREENLAYOUT_SIZE_MASK; switch (screenSize) {
case Configuration.SCREENLAYOUT_SIZE_SMALL:
break;
case Configuration.SCREENLAYOUT_SIZE_NORMAL:
break;
case Configuration.SCREENLAYOUT_SIZE_LARGE:
break;
case Configuration.SCREENLAYOUT_SIZE_XLARGE:
// support from API 9
break;
case Configuration.SCREENLAYOUT_SIZE_MASK:
break;
case Configuration.SCREENLAYOUT_SIZE_UNDEFINED:
break;
default:
break;
}
 有一点要注意,必须在AndroidManifest.xml里加上下面的声明 

 <supports-screens
android:largeScreens="true"
android:normalScreens="true"
android:resizeable="true"
android:smallScreens="true"
android:xlargeScreens="true" />

http://wake.hiapk.com/share/design/130417/1422786.html

Android设备各种使用尺寸整理的更多相关文章

  1. Android设备网络、屏幕尺寸、SD卡、本地IP、存储空间等信息获取工具类

    Android设备网络.屏幕尺寸.SD卡.本地IP.存储空间.服务.进程.应用包名等信息获取的整合工具类. package com.qiyu.ddb.util; import android.anno ...

  2. Android设备上的逐像素碰撞检测

    介绍 我正在我的Android设备上开发一款游戏,不用说,因为我想要接触到尽可能多的用户,我做到了 省略了硬件加速.因此,我需要编写能够在大多数设备上运行的最快的代码.我从一个简单的表面视图开始 并使 ...

  3. Xamarin设备相关图片尺寸要求

    Xamarin设备相关图片尺寸要求   Xamarin跨平台开发,要兼顾iOS.Android.尤其是图片方面,各个平台有对应的不同要求.在iOS中,需要提供没有后缀(设备无关单位尺寸).@2x(双倍 ...

  4. cocos2d-x项目过程记录(ios和android设备的适配)

    (原创作品,欢迎转载,注明出处,谢谢:http://www.cnblogs.com/binxindoudou/admin/EditPosts.aspx?postid=3213645) 1.原理分析的博 ...

  5. 安卓MonkeyRunner源码分析之与Android设备通讯方式

    如前文<谁动了我的截图?--Monkeyrunner takeSnapshot方法源码跟踪分析>所述,本文主要会尝试描述android的自动化测试框架MonkeyRunner究竟是如何和目 ...

  6. 【Android 应用开发】分析各种Android设备屏幕分辨率与适配 - 使用大量真实安卓设备采集真实数据统计

    .主要是为了总结一下 对这些概念有个直观的认识; . 作者 : 万境绝尘  转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/198 ...

  7. Android 开发 获取Android设备的屏幕高宽

    获得屏幕的宽度和高度有很多种方法: //1.通过WindowManager获取 DisplayMetrics dm = new DisplayMetrics(); heigth = dm.height ...

  8. 分析各种Android设备屏幕分辨率与适配 - 使用大量真实安卓设备采集真实数据统计

    一. 数据采集 源码GitHub地址 : -- SSH : git@github.com:han1202012/DisplayTest.git; -- HTTP : https://github.co ...

  9. 【转】 不需要任何权限获得Android设备的唯一ID

    不需要任何权限获得Android设备的唯一ID,权限android设备id 这个问题来自于Is there a unique Android device ID? 我对这个问题的答案做了整理,包括将另 ...

随机推荐

  1. CM3大礼包

  2. PHP登陆提示信息框代码

    出错的提示框 echo "<Script Language='Javascript'>";   echo "alert('提示:用户名密码错误,请重新输入!' ...

  3. Scala各种符号含义;scala =>符号含义总结

    符号: <- :for循环 -> :map映射 => :匿名函数 Int= :scala函数 _ :通配符 https://blog.csdn.net/bon_mot/article ...

  4. [转载] K3漏油器全紫铜替换原硅胶垫教程。标准姿势

    首先感谢坛友的支持,全铜套件已经完成了.有的坛友希望有个教程.在这里大体说一下技巧吧.下面步入正题. 声明:本教程图片大部分均来源于给坛友改装时所拍.如有雷同,概不负责!!!声明:本教程图片大部分均来 ...

  5. Windows下cwRsyncServer双机连续同步部署

    下载cwRsyncServer服务器端与客户端的安装文件:服务端下载:cwRsyncServer_4.0.5_Installer.zip客户端下载:cwRsync_4.0.5_Installer.zi ...

  6. Unicode类别

    Unicode 通用类别: http://msdn.microsoft.com/zh-cn/library/20bw873z(VS.80).aspx 类别 说明 Lu 字母,大写 Ll 字母,小写 L ...

  7. hive bucket

    转载:https://www.cnblogs.com/end/archive/2013/01/09/2852413.html hive中table可以拆分成partition,table和partit ...

  8. Android Gradle基础实践

    1,gradle是全新的一种IDE编程环境,Android Studio集成了Gradle IDE 2,要下载gradle(比方gradle-2.10)解压.配置环境变量.比方G:\Program   ...

  9. iOS block用作属性封装代码

    @property (copy, nonatomic) void (^actionBlock)(); @property (copy, nonatomic) void (^actionWithPapa ...

  10. Archlinux风扇设置

    在笔记本(ThinkPad T440)连续两天因过热而死机后, 对内核的风扇控制算法果断失去信心. 风扇的用户层控制接口是 /proc/acpi/ibm/fan, 但为防止用户控制不当烧坏机器, 默认 ...