Android自适应屏幕方向、大小和分辨率
屏幕大小
1、不同的layout
Android手机屏幕大小不一,有480x320,640x360,800x480.怎样才能让App自动适应不同的屏幕呢? 其实很简单,只需要在res目录下创建不同的layout文件夹,比如:layout-640x360,layout-800x480,所有的layout文件在编译之后都会写入R.java里,而系统会根据屏幕的大小自己选择合适的layout进行使用。
2、hdpi、mdpi、ldpi
前的版本中,只有一个drawable,而2.1版本中有drawable-mdpi、drawable-ldpi、drawable-hdpi三个,这三个主要是为了支持多分辨率。
drawable- hdpi、drawable- mdpi、drawable-ldpi的区别:
- drawable-hdpi里面存放高分辨率的图片,如WVGA (480x800),FWVGA (480x854)
- drawable-mdpi里面存放中等分辨率的图片,如HVGA (320x480)
- drawable-ldpi里面存放低分辨率的图片,如QVGA (240x320)
系统会根据机器的分辨率来分别到这几个文件夹里面去找对应的图片。在开发程序时为了兼容不同平台不同屏幕,建议各自文件夹根据需求均存放不同版本图片。
屏幕方向
1、横屏竖屏自动切换
可以在res目录下建立layout-port和layout-land两个目录,里面分别放置竖屏和横屏两种布局文件,这样在手机屏幕方向变化的时候系统会自动调用相应的布局文件,避免一种布局文件无法满足两种屏幕显示的问题。
2、禁用自动切换
只需要在AndroidManifest.xml文件中加入android:screenOrientation属性限制。
限制此页面横屏显示
Android:screenOrientation="landscape"
限制此页面数竖屏显示
Android:screenOrientation="portrait"
字体自适应大小
方法1:
首先根据不同分辨率获取不同字体大小。
在RES里创建
values-480x320/strings.xml 里面设置
<dimen name="Text_size">30px</dimen>
和
values-800x400/strings.xml 里面设置
<dimen name="Text_size">40px</dimen>
分别代表480X320 和 800X400分辨率情况下 字号为30px和40px;
在java文件中这样调用
int sizeOfText = (int) this.getResources().getDimension(R.dimen.Text_size);
方法2:
在视图的onsizechanged里获取视图宽度,一般情况下默认宽度是320,所以计算一个缩放比率rate = (float) w/320 (w是实际宽度)
然后在设置字体尺寸时 paint.setTextSize((int)(8*rate)); (8是在分辨率宽为320 下需要设置的字体大小实际字体大小 = 默认字体大小 x rate)
分享到:
相关推荐
labview窗口根据屏幕大小自适应屏幕分辨率
使vb窗体可以自适应屏幕分辨率的大小
Android自适应分辨率,让程序自动适应屏幕大小
该文档详细说明了关于android设备屏幕分辨率大小的问题,为开发者开发应用中遇到的自适应问题提供帮助
程序自适应窗体的大小和分辨率.rar
android关于自适应屏幕方向和大小的一些经验
Android 屏幕自适应方向尺寸与分辨率,包括屏幕界面布局、多分辨率支持、获取屏幕尺寸、屏幕横屏与竖屏等,android 模拟器横屏,android 虚拟机横屏,android 判断横屏,android 禁止横屏,android 强制横屏,...
自适应屏幕分辨率,labview自适应屏幕分辨率,LabView源码.zip.zip
添加事件Load和事件SizeChanged并在事件中调用AutoSizeFormClass类的方法 比如: private void MainFrame_Load(object sender, EventArgs e) { asc.controllInitializeSize(this); } private void MainFrame...
基于android屏幕的自适应的布局方式。
关于自适应屏幕方向和大小的一些经验.doc.zip
自适应屏幕尺寸大小的网页,改变分辨率后 无需F5刷新.zip
屏幕自适应。调用这个VI的上层VI在调整好界面后,一定要将前面板的最小尺寸设置为当前前面板大小。
android 自适应屏幕 翻转 网络转发 共享给初学者
安卓app开发项目-关于自适应屏幕方向和大小的一些经验(源码).zip
屏幕自适应程序,使用时直接调用即可。里面包含测试程序,可执行文件等。
Android项目关于自适应屏幕方向和大小的一些经验.rar
ANDROID自适应屏幕大小和LAYOUT布局横屏竖屏
android安卓开发app如何做到自适应手机屏幕大小,适应不同分辨率的手机.zip