一、什么是屏幕适配
适配的理解就是在程序运行的时候,程序在不同硬件上能够展示如设计那样的效果。
不适配的情形有:带文字的控件宽度不够,文字展示不全;图标,Bar,按钮过小或者过大。
个人理解,需要做好Android系统硬件的适配,需要分为两个方面:
(1)同一分辨率下,不同屏幕大小【手机 -- IPad -- 电视】;
(2)同一屏幕尺寸下,不同屏幕分辨率。
对于第一种情形,处理的更多方式是直接另起一个APP,其内置展示页面以及业务逻辑,因为屏幕之间巨大的差异,已经发生了质的变化,甚至可以说是不同的APP。
手机本身也存在多种尺寸,但因为其相差不是很大,屏幕长宽的比例依旧保持相差不大。也归纳到同一屏幕尺寸下,不同分辨率的适配。
当然,在同一APP中,也能够实现屏幕尺寸发生巨大差异的处理。其维护及实现复杂度相比于再开启一个APP的代价似乎更大。
二、尺寸适配怎么做
尺寸适配的话需要我们在project下的res根目录下建立如下的文件夹
图中的三个文件夹中的dimen.xml文件就是我们针对不同的手机分辨率做出的尺寸适配的方法
其中values文件夹中的dimens.xml是我用来处理当手机屏幕分辨率过低找不到合适的尺寸适配时,系统会选用values中的dimens.xml作为默认的尺寸
三、什么是9.png图片
四、文字国际化怎么做
1. 新建一个中文资源文件夹
values-zh
strings.xml
2.新建一个英文资源文件夹
values-en
strings.xml
说明:
现在共有三个资源文件夹
1> values 默认资源文件夹(系统环境不是中文,也不是英文时,就显示此文件夹中资源)
2> values-zh 当系统环境是中文时,显示此文件夹中资源
3> values-en 当系统环境是英文时,显示此文件夹中资源,细分英文时 values-en-rUS
五、横竖屏适配怎么做
在res目录下建立layout-land目录,相应的layout文件名不变,比如main.xml。layout-land是横屏的layout,其他的不用管,横竖屏切换时程序为调用Activity的onCreate方法,从而加载相应的布局。