最近感觉要被屏幕适配玩死了…… 
安卓的手机为虾米不能像苹果那样只有几个分辨率呢?为什么呢!!!!!!!阿门…… 
目前想到有两种解决办法…… 
第一种: 
  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.获得屏幕大小

  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节点,具体的内容如下:

  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"全部竖着…

Android 屏幕自适应方向尺寸的更多相关文章

  1. 4种必须知道的Android屏幕自适应解决方案

    文章来源:http://blog.csdn.net/shimiso/article/details/19166167 demo下载:http://www.eoeandroid.com/forum.ph ...

  2. 四种必须知道的Android屏幕自适应解决方案

    一.细说layout_weight     目前最为推荐的Android多屏幕自适应解决方案.     该属性的作用是决定控件在其父布局中的显示权重,一般用于线性布局中.其值越小,则对应的layout ...

  3. 【iOS】屏幕旋转,屏幕自适应方向变化

    1. iOS有四个方向的旋转,为了保证自己的代码能够支持旋转,我们必须首先处理一个函数: - (BOOL)shouldAutorotateToInterfaceOrientation:(UIInter ...

  4. 用于做 Android 屏幕自适应的文章资源

    Android Developer : (1) https://developer.android.com/training/multiscreen/index.html (2) https://de ...

  5. Android屏幕适配全攻略(最权威的官方适配指导)屏幕尺寸 屏幕分辨率 屏幕像素密度 dpdipdpisppx mdpihdpixdpixxdpi

    Android屏幕适配全攻略(最权威的官方适配指导)原创赵凯强 发布于2015-05-19 11:34:17 阅读数 153734 收藏展开 转载请注明出处:http://blog.csdn.net/ ...

  6. Android系统自适应屏幕大小

    1.屏幕相关概念1.1分辨率是指屏幕上有横竖各有多少个像素1.2屏幕尺寸指的是手机实际的物理尺寸,比如常用的2.8英寸,3.2英寸,3.5英寸,3.7英寸android将屏幕大小分为四个级别(smal ...

  7. Delphi 实现窗体自适应调整尺寸以适应不同屏幕分辩率的显示问题

    给你一段代码,网上转的:unit uMyClassHelpers;//实现窗体自适应调整尺寸以适应不同屏幕分辩率的显示问题.//        陈小斌,2012年3月5日 interface Uses ...

  8. 获取Android屏幕尺寸、控件尺寸、状态栏/通知栏高度、导航栏高度

    1.获取Android屏幕尺寸 我们能够通过getSize()方法获得屏幕的尺寸 Display display = getWindowManager().getDefaultDisplay(); P ...

  9. Android屏幕尺寸与度量单位(px,dp,sp)简介

    MarkdownPad Document *:first-child { margin-top: 0 !important; } body>*:last-child { margin-botto ...

随机推荐

  1. extjs grid数据改变后刷新的实现

    做了一个编辑extjs grid记录的窗体,但更改数据后,怎么重新刷新grid让数据显示呢? 做了半天的尝试,其实到最后只需一句话,faint:-) this.store.reload(); 不用加任 ...

  2. Ext文本输入框:Ext.form.TextField属性汇总(转) (

    本章介绍Ext.form.TextField组件的基本用法: <form id="form1" runat="server">    <div ...

  3. Use two picogate devices for bidirectional level-shifting

    In new mixed-voltage systems, it is often necessary to level-shift a control signal from a high leve ...

  4. Delphi 的插件框架 WisdomPluginFramework

    WisdomPluginFramework是融合OSGI微内核理念 + Eclipse的扩展点概念而精心设计的轻量级插件框架, 由Delphi实现,但可以使用于Delphi.BCB.VC++中,提供非 ...

  5. Process ID, Process handle, Window handle

    http://forums.codeguru.com/showthread.php?392273-RESOLVED-How-to-get-window-s-HWND-from-it-s-process ...

  6. boost.python编译及演示样例

    欢迎转载,转载请注明原文地址:http://blog.csdn.net/majianfei1023/article/details/46781581 linux编译boost的链接:http://bl ...

  7. Sublime的中文GBK显示乱码的解决方法

    import urllib2,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd ...

  8. 在w7下的wamp中配置memcache

    php版本是5.4.16 ,我的电脑是w7 64位的. 一. memcache和memcached的区别  在自己的新程序中打算全面应用memcached技术,这个很容易理解这是memcached是内 ...

  9. windows10许可证即将过期怎么办

    来自:http://www.xuexila.com/diannao/xitong/win7/1316897.html 会提示需要激活windows,不需要每隔两小时会重启一次,有些应用是运行不起来的. ...

  10. 树状数组求第K小值 (spoj227 Ordering the Soldiers &amp;&amp; hdu2852 KiKi&#39;s K-Number)

    题目:http://www.spoj.com/problems/ORDERS/ and pid=2852">http://acm.hdu.edu.cn/showproblem.php? ...