Android应用如何做屏幕适配
来源:互联网 发布:中国软件杯东软睿道 编辑:程序博客网 时间:2024/06/04 18:50
Android应用如何做屏幕适配
在Android应用开发中,我们常遇到一个非常麻烦的问题,那就是做不同屏幕的适配问题。因为Android手机的种类众多,屏幕的尺寸,像素等配置都各不相同,如何让应用能适应各种屏幕,成为了Android应用开发中的一个非常重要的问题。
先简单介绍一下Android的屏幕的种类以及屏幕的单位。
android手机屏幕可以按两种标准分类。按屏幕尺寸分,常见的有small,normal,large,xlarge四种,还有就是按屏幕像素密度分,常见的有ldpi,mdpi,hdpi,xhdpi四种。ldpi:对应分辨率240×320;mdpi:对应分辨率320×480;hdpi:对应分辨率480×800或480×854。实际的情况可能还要更复杂。可以参考下面的图
接着说说Android中的单位。
dp(dip):指一个抽象意义上的像素,程序用它来定义界面元素。一个与密度无关的像素,在逻辑尺寸上,与一个位于像素密度为160DPI的屏幕上的像素是一致的,这也是Android平台所假定的默认显示设备。在运行的时候,平台会以目标屏幕的密度作为基准,“透明地”处理所有需要的DIP缩放操作。要把密度无关像素转换为屏幕像素,可以用这样一个简单的公式:pixels=dips*(density/160)。这个density,在ldpi屏幕上是120,mdpi的屏幕上是160,hdpi为240,xhdpi为320,可以根据这个计算出dp与px之间的关系。举个例子,在DPI为240的屏幕上,1个DIP等于1.5个物理像素。我们最长用的就是这个单位。
px就不用多讲了,就是屏幕实际的像素单位,在开发中尽量少的使用绝对像素,这是我个人看法。
我一般使用的适配屏幕的方法是建立不同的values文件夹,分别创建dimen.xml文件,然后把需要使用具体值来确定大小和位置的空间,把值都提取到dimen文件中,在布局文件中引用。
创建不同的文件夹存放dimen.xml文件。
在布局文件中引用。
然后在不同的dimen文件中,配置不同的值,使其匹配文件夹对应的屏幕。这种办法虽然比较麻烦,但是效果还是不错的,只要dimen中值配对了,那么布局显示在屏幕上的效果还是很不错的。
要注意的一点就是,dimens文件中值一定要计算正确。
介绍一个计算的方法。先计算出一个作为标准的屏幕上的所有布局的值,确定好之后,就根据不同屏幕像素和dpi的关系,计算出各种屏幕与标准屏幕的比值关系,就可以轻松计算出其他屏幕的配置数值了。关键的就是先定好一个,根据比值关系算出其他的。
以上是我在实际开发中用的适配屏幕的方法,希望与大家多多交流,希望大家有好的方法也可以多分享。
- Android应用如何做屏幕适配
- ANDROID应用如何适配屏幕
- Android应用如何适配不同的屏幕
- 屏幕适配 企业现在如何做
- Android应用屏幕适配
- Android中怎么做屏幕适配
- ANDROID 如何适配屏幕
- ANDROID 如何适配屏幕
- Android应用开发之你必须知道如何在Android4.0上开发多屏幕适配的应用
- 【android】GridView如何适配不同屏幕
- android:如何处理屏幕适配问题?
- Android GridView如何适配不同屏幕
- 如何做 Android 应用流量测试
- 如何做屏幕的旋转
- android应用如进行屏幕尺寸和分辨率适配
- html5开发Android应用屏幕适配问题
- html5开发Android应用屏幕适配问题
- Android应用的国际化、样式和主题、屏幕适配
- Java大牛的进化之必看书籍列表
- jQuery.Validate验证库
- zj01
- wxPython实现窗口在任务栏中闪烁
- 一个毕业6年的程序员工作经历和成长感悟(中)
- Android应用如何做屏幕适配
- 可视化排序程序
- 解决MySql Command Line Client查询结果乱码问题
- 杨洋(161)-计算机是如何工作的(实验一)
- debian wheezy 修改默认配置
- Roman To Integer
- C#调用C++DLL中的回调函数(异步的情况,DLL中会在事件触发时调用函数)
- 黑马程序员-JAVASE入门(组成部分1变量,函数等)
- unity3D 输出FPS