之前都是在自研的产品上做开发,而且我们的屏幕是1dip=1px的,所以在写App布局的时候,随便写单位,也没觉得什么不妥.可是近期我把以前的App里面的一些自定义控件在emulator上跑的时候,才发现显示怎么变奇怪了.这才好好了解了一下Android的显示相关的东西,整理在这边. 1.屏幕尺寸(screen size)就是我们平常讲的手机屏幕大小,是屏幕的对角线长度,一般讲的大小单位都是英寸.比如iPhone5S的屏幕尺寸是4英寸.Samsung Note3是5.7英寸. 2.像素(pixel…
Android 获取屏幕大小和密度 DisplayMetrics metric = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metric); int width = metric.widthPixels;  // 屏幕宽度(像素) int height = metric.heightPixels;  // 屏幕高度(像素) float density = metric.density;  //…
android获取屏幕大小非常常用,例如写个程序,如果要做成通用性很强的程序,适用屏幕很强,一般布局的时候都是根据屏幕的长宽来定义的,所以我把这个总结一下,方便日后忘记的时候查阅.还有就是有时候写程序根据需求不需要title,可以在程序中设置无title的屏幕!转载请标明出处: http://blog.csdn.net/wdaming1986/article/details/6769821 程序的效果图: 代码说明一切真理: 一.mainActivity.java类得代码: package co…
本来想着如下方法就能得到了 Display display = getWindowManager().getDefaultDisplay(); Log.i("view", "height:"+display.getHeight()); Log.i("view","width:"+display.getWidth()); DisplayMetrics displayMetrics = new DisplayMetrics();…
adb shell dumpsys window displays…
private DisplayMetrics dm = new DisplayMetrics(); TextView tv; Button bu; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_weather); tv = (TextView) findViewById(R.id.…
一:不同的layout Android手机 屏幕 大小不一,有480x320, 640x360, 800x480.怎样才能让App自动 适应不同的屏幕 呢?      其实很简单,只需要在res目录下创建不同的layout文件 夹,比如layout-640x360,layout-800x480,所有的layout文件在编译 之后都会写入R.java里,而系统 会根据屏幕 的大小自己选择合适的layout进行使用.   二:hdpi.mdpi.ldpi 在之前的版本中,只有一个drawable,而…
1.屏幕相关概念 1.1分辨率 是指屏幕上有横竖各有多少个像素 1.2屏幕尺寸 指的是手机实际的物理尺寸,比如常用的2.8英寸,3.2英寸,3.5英寸,3.7英寸 android将屏幕大小分为四个级别(small,normal,large,and extra large). 1.3屏幕密度 每英寸像素数 手机可以有相同的分辨率,但屏幕尺寸可以不相同, Diagonal pixel表示对角线的像素值(=),DPI=933/3.7=252 android将实际的屏幕密度分为四个通用尺寸(low,me…
1.屏幕相关概念1.1分辨率是指屏幕上有横竖各有多少个像素1.2屏幕尺寸指的是手机实际的物理尺寸,比如常用的2.8英寸,3.2英寸,3.5英寸,3.7英寸android将屏幕大小分为四个级别(small,normal,large,and extra large).1.3屏幕密度每英寸像素数手机可以有相同的分辨率,但屏幕尺寸可以不相同,Diagonal pixel表示对角线的像素值(=),DPI=933/3.7=252android将实际的屏幕密度分为四个通用尺寸(low,medium,high,…
支持多个屏幕大小和 DPI 值的指导原则 要部署独立于平台的应用程序,应了解不同的输出设备.设备可以具有不同的屏幕大小或分辨率以及不同的 DPI 值或密度. Flex 工程师 Jason SJ 在他的博客中介绍了两种创建与分辨率无关的移动设备应用程序的方法. 术语 分辨率是像素高度乘以像素宽度得到的数值:即设备支持的像素总数. DPI 是每平方英寸的点数:即设备屏幕上的像素密度.术语 DPI 和 PPI(每英寸像素数)可以互换使用. Flex 对 DPI 的支持 以下 Flex 功能简化了生成与…
1.在xml布局文件中,控件的宽度和高度用  dp ;   字体大小用 sp 2.根据屏幕的宽高来动态的适配 , 获取屏幕的宽高的两种方法: 第一种方法: /** * 屏幕的宽度 * 屏幕的高度 * @return */ public void initPhone1( Activity activity ){ int phone_Width = activity.getWindowManager().getDefaultDisplay().getWidth() ; //单位是 px int ph…
dp = dip : device independent pixels(设备独立像素). 不同设备有不同的显示效果,这个和设备硬件有关,一般我们为了支持WVGA.HVGA和QVGA 推荐使用这个,不依赖像素. px: pixels(像素). 不同设备显示效果相同,一般我们HVGA代表320x480像素,这个用的比较多. pt: point,是一个标准的长度单位,1pt=1/72英寸,用于印刷业,非常简单易用: sp: scaled pixels(放大像素). 主要用于字体显示best for…
1.术语和概念 概念解释 名词 解释 Px (Pixel像素) 不同设备显示效果相同.这里的“相同”是指像素数不会变,比如指定UI长度是100px,那不管分辨率是多少UI长度都是100px.也正是因为如此才造成了UI在小分辨率设备上被放大而失真,在大分辨率上被缩小. Screen Size (屏幕尺寸) 一般所说的手机屏幕大小如1.6英寸.1.9英寸.2.2英寸,都是指的对角线的长度,而不是手机面积.我们可以根据勾股定理获取手机的宽和长,当然还有面积. Resolution (分辨率) 指手机屏…
Android 可设置为随着窗口大小调整缩放比例,但即便如此,手机程序设计人员还是必须知道手机屏幕的边界,以避免缩放造成的布局变形问题. 手机的分辨率信息是手机的一项重要信息,很好的是,Android 已经提供DisplayMetircs 类可以很方便的获取分辨率.下面简要介绍 DisplayMetics 类: Andorid.util 包下的DisplayMetrics 类提供了一种关于显示的通用信息,如显示大小,分辨率和字体. 为了获取DisplayMetrics 成员,首先初始化一个对象如…
1. px (pixels)像素 – 是像素,就是屏幕上实际的像素点单位. dip或dp (device independent pixels)设备独立像素,与设备屏幕有关. sp (scaled pixels — best for text size):类似dp,主要处理字体的大小. dpi(dot per inch):屏幕像素密度,每英寸多少像素 density:density表示每英寸有多少个显示点(逻辑值),它的单位是dpi 在 android api 有跟这个同名的成员,获取方法: f…
1.术语和概念 术语 说明 备注 Screen size(屏幕尺寸) 指的是手机实际的物理尺寸,比如常用的2.8英寸,3.2英寸,3.5英寸,3.7英寸 摩托罗拉milestone手机是3.7英寸 Aspect Ratio(宽高比率) 指的是实际的物理尺寸宽高比率,分为long和nolong Milestone是16:9,属于long Resolution(分辨率) 和电脑的分辨率概念一样,指手机屏幕纵.横方向像素个数 Milestone是854*480 DPI(dot per inch) 每英…
注:本文转载于:http://blog.csdn.net/welovesunflower/article/details/7930248 一些术语 Screen Size 屏幕尺寸: 实际的物理尺寸,以屏幕的对角线为准(包括通知栏?) 将所有的实际尺寸分为四个广义的尺寸:small(小),normal(正常),large(大),extra large(特大) Density 屏幕密度: 屏幕的屋里面积内的像素数量,通常指dpi(每英寸点数) small的屏幕密度比normal或large在一个给…
DisplayMetrics public class DisplayMetrics   extends Object java.lang.Object     ↳ android.util.DisplayMetrics  是Android提供的记述屏幕的有关信息的一种结构,诸如其尺寸,密度和字体缩放的一般信息. 第一种方法: WindowManager wm = (WindowManager) context.getSystemService(        Context.WINDOW_SE…
转载: 一.一些基本概念 1.长度(真实长度):英寸.inch 2.分辨率:density 每英寸像素数  dpi(密度) 3.像素:px 4.dip的公式:px /dip=dpi/160  所以 dip 类似于英寸.长度(dp=dip,sp类似于dip)  dip=160*inch 5.相对分辨率=长px*宽px 二.平时我们一些概念的混淆 1.平时我们说 手机的分辨率是 320*480的,其实的这里的分辨率是相对分辨率 意思是:水平方向上的像素数是320,垂直方向上像素数是480, 分辨率是…
一个.与分辨率无关 1.使用dp(dpi) Android密度不依赖像素(dp)指定屏幕尺寸,它同意不同的屏幕尺寸和像素密度类似设备通过缩放来达到同样的效果. (不解决不同屏幕尺寸的问题?) 2.的资源限定符 当使用不能非常好地动态缩放的Drawable资源时,应该创建和包括针对每种像素密度类别进行优化的图像资源. 就是drawable-hdpi.m.l 感觉这个也好麻烦....哎,我都是仅仅用一个hdpi偷懒,只是这样小屏幕也载入了大图片... 二.为不同的屏幕大小提供支持和优化 没有必要也不…
1. 名词理解 屏幕尺寸(screen size) 屏幕尺寸(screen size),是屏幕的对角线长度,一般讲的大小单位都是英寸. DPI (dots per inch) dpi 是(英文Dots Per Inch)(每英寸所打印的点数)的缩写,是打印机.鼠标等设备分辨率的单位.国际上都是计算一平方英寸面积内像素的多少.这是衡量打印机打印精度的主要参数之一,一般来说,该值越大,表明打印机的打印精度越高.如果对于扫描设备,dpi越大,则采样点越高,扫描的图片越清晰. 可以理解为像素的密度,即单…
http://www.ard9.com/gsjj/204.html 对于Android平台来说,不同分辨率下Icon的大小设计有着不同的要求,对于目前主流的 HDPI即WVGA级别来说,通常hdpi的应用icon大小为72x72,而标准的mdpi即hvga为48x48,对于目前HTC和Motorola 推出的一些QVGA的使用了ldpi,图标为32x32 对于Android平台来说,不同分辨率下Icon的大小设计有着不同的要求,对于目前主流的HDPI即WVGA级别来说,通常hdpi的应用icon…
原文:Android 获取屏幕分辨率 得到一个屏幕尺寸的三种方法如下:        // 通过WindowManager获取        DisplayMetrics dm = new DisplayMetrics();        getWindowManager().getDefaultDisplay().getMetrics(dm);        // 通过Resources获取         DisplayMetrics dm2 = getResources().getDisp…
.主要是为了总结一下 对这些概念有个直观的认识; . 作者 : 万境绝尘  转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/19899193 . 一. 数据采集 源码GitHub地址 : -- SSH : git@github.com:han1202012/DisplayTest.git; -- HTTP : https://github.com/han1202012/DisplayTest; . 使用下面的程序运行在不同设备…
一. 数据采集 源码GitHub地址 : -- SSH : git@github.com:han1202012/DisplayTest.git; -- HTTP : https://github.com/han1202012/DisplayTest; . 使用下面的程序运行在不同设备上 : package shuliang.han.displaytest; import android.app.Activity; import android.os.Bundle; import android.…
Android手机屏幕分辨率五花八门,导致开发时不好把握,还好各个引擎对这个屏幕分辨率问题都有较好的处理方式:unity3D 也为我们提供了一个不错的解决方案. 在Unity3D 进行 android 游戏开发时,对于不同分辨率下的显示效果就像是摄像机的自动平移了一般,看了不少游戏,对于 Unity3D 开发 android 游戏貌似都没有做相应的屏幕分辨率的处理,而是随摄像机的自动移动,把场景做大些不至于出现空白背景. 其实 Unity3D 开发3D游戏,对于不同的分辨率,我们只需要设置 1…
地址:http://developer.android.com/training/multiscreen/screendensities.html#TaskProvideAltBmp 安卓支持不同的屏幕大小 安卓支持非常多种屏幕,大小不一,有3.5’4.0’,5.0’.为了让写出来的app能够适配这些不同屏幕的大小,写程序时应该注意以下几点: 1.使用”wrap_content” 和“match_parent” 这里就要求尽量不要使用固定大小的值 2.在复杂界面布局时,如果能使用Releativ…
在Eclipse Android中设置模拟器屏幕大小是本文要介绍的内容,主要是来了解并学习Eclipse Android中模拟器的设置,具体关于Eclipse Android内容的详解来看本文. 方法一.选择"AndroidSDKandAVDManager",选中相应的AVD, 点击右侧的"StartstheselectedAVD"按钮 如图,在"ScreenSize(in)"中填入你需要的屏幕尺寸,然后"Launch",OK…
转载请注明出处:http://blog.csdn.net/guolin_blog/article/details/8830286 原文地址为:http://developer.android.com/training/multiscreen/screensizes.html 本文将告诉你如何让你的应用程序支持各种不同屏幕大小,主要通过以下几种办法: 让你的布局能充分的自适应屏幕 根据屏幕的配置来加载合适的UI布局 确保正确的布局应用在正确的设备屏幕上 提供可以根据屏幕大小自动伸缩的图片 使用 "…
// 通过WindowManager获取 DisplayMetrics dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); System.out.println("heigth : " + dm.heightPixels); System.out.println("width : " + dm.widthPixels); // 通过Resources获取…