android分辨率详解

1.  Density获取的部分在DisplayMetrics.java这个类里面,系统定义了3个等级的density,分别是low-120,medium-160,high-240。

2.  代码中把Density设置为默认的Density,也就是当前,机器中的Density。那如何设置这个Density。同样在这个类最下面,找到系统获取Density的方法:

而如何给系统设置Density,就在./device/eshion/f101/init.rc,添加setprop ro.sf.lcd_density 240.
3.  更改系统像素是在./framework/core/java/android/content/res/CompatibilityInfo.java下:

eg:

1.DisplayMetrics.java中
系统定义了3个等级的density,分别是low-120,medium-160,high-240

2.customize\customer_cfg\t600a\res\system.prop里
ro.sf.lcd_density = 240


3.trunk\customize\customer_cfg\t600a\res\u-boot下sp8810.h:根据 lcd 分辨率确定需要的宏
#if defined(CONFIG_SP6820G_RTL_HL)   // HVGA
#define CONFIG_LCD_HVGA   1
//#define CONFIG_LCD_WVGA   1
#else
//#define CONFIG_LCD_HVGA   1
#define CONFIG_LCD_WVGA   1
#endif

=======================================================================================================

Android 适配不同分辨率&hdpi、mdpi、ldpi&横屏竖屏

一:不同的layout
Android手机屏幕大小不一,有480×320, 640×360, 800×480.怎样才能让App自动适应不同的屏幕呢?
其实很简单,只需要在res目录下创建不同的layout文件夹,比如layout-640×360,layout-800×480,所有的layout文件在编译之后都会写入R.java里,而系统会根据屏幕的大小自己选择合适的layout进行使用。

二:hdpi、mdpi、ldpi

在之前的版本中,只有一个drawable,而2.1版本中有drawable-mdpi、drawable-ldpi、drawable-hdpi三个,这三个主要是为了支持多分辨率。
  drawable- hdpi、drawable- mdpi、drawable-ldpi的区别:
  (1)drawable-hdpi里面存放高分辨率的图片,如WVGA (480×800),FWVGA (480×854)
  (2)drawable-mdpi里面存放中等分辨率的图片,如HVGA (320×480)
  (3)drawable-ldpi里面存放低分辨率的图片,如QVGA (240×320)
  系统会根据机器的分辨率来分别到这几个文件夹里面去找对应的图片。
  在开发程序时为了兼容不同平台不同屏幕,建议各自文件夹根据需求均存放不同版本图片。

三:横屏竖屏

以下步骤是网上流传的,不过我自己之前是通过图形化界面实现这个配置,算是殊途同归,有空我会把图片贴上来。
还要说明一点:每个activity都有这个属性screenOrientation,每个activity都需要设置,可以设置为竖屏(portrait),也可以设置为无重力感应(nosensor)。
要让程序界面保持一个方向,不随手机方向转动而变化的处理办法:

在AndroidManifest.xml里面配置一下就可以了。加入这一行android:screenOrientation=”landscape”。
例如(landscape是横向,portrait是纵向):


QVGA = 320 * 240;  WQVGA = 320 * 480;  WQVGA2 = 400 * 240;  WQVGA3 = 432 * 240;  HVGA = 480 * 320;  VGA = 640 * 480;
WVGA = 800 * 480;  WVGA2 = 768 * 480;  FWVGA = 854 * 480;  DVGA = 960 * 640;  PAL = 576 * 520;  NTSC = 486 * 440; SVGA = 800 * 600;
WSVGA [...]

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值