Android 屏幕自适应方向尺寸

最近感觉要被屏幕适配玩死了…… 
安卓的手机为虾米不能像苹果那样只有几个分辨率呢?为什么呢!!!!!!!阿门…… 
目前想到有两种解决办法…… 
第一种: 
  HTML5+CSS3+WebView交互……目前还在研究,空了放demo 
第二种: 
  通过安卓UI自己的layout来处理: 
  1.屏幕界面布局 
    在 res 目录下创建不同的 layout(drawable也支持)文件夹,比如 layout-640x360 、layout-800x480 ,所有的 layout 文件在编译之后都会写入 R.java 里,而系统将根据屏幕的大小自己选择合适的 layout 进行使用 
  2.多分辨率支持 
    支持多分辨率有 mdpi、ldpi、hdpi 3个文件。 
    hdpi 里面存放高分辨率的图片,如 WVGA (480x800),FWVGA (480x854) ;(PS:偶很纠结480*854的分辨率,纠结啊!!!!) 
    mdpi 里面存放中等分辨率的图片,如 HVGA (320x480) ; 
    ldpi 里面存放低分辨率的图片,如 QVGA (240x320) 。 
    系统将根据机器的分辨率来分别到这几个文件夹里面去找对应的图片,在程序开发中,为了兼容不同平台不同屏幕,建议将不同版本图片根据需求存放在各自对应的文件夹中。 
  3.获得屏幕大小 
   

Java代码   收藏代码
  1. DisplayMetrics metric = new DisplayMetrics();  
  2.        getWindowManager().getDefaultDisplay().getMetrics(metric);  
  3.        int width = metric.widthPixels;  // 屏幕宽度(像素)  
  4.        int height = metric.heightPixels;  // 屏幕高度(像素)  
  5.        float density = metric.density;  // 屏幕密度(0.75 / 1.0 / 1.5)  
  6.        int densityDpi = metric.densityDpi;  // 屏幕密度DPI(120 / 160 / 240)  


    话说在一个低密度的小屏手机上,仅靠上面的代码是不能获取正确的尺寸的。所以,需要在工程的AndroidManifest.xml文件中,加入supports-screens节点,具体的内容如下: 
  

Xml代码   收藏代码
  1. <supports-screens  
  2.        android:smallScreens="true"  
  3.        android:normalScreens="true"  
  4.        android:largeScreens="true"  
  5.        android:resizeable="true"  
  6.        android:anyDensity="true" />  


   4.还有自动横屏之类的,不准备支持了……恩~阿门……android:screenOrientation="portrait"全部竖着…

转载于:https://www.cnblogs.com/xiaochao1234/p/4036412.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值