屏幕适配

来源:互联网 发布:masta软件下载 编辑:程序博客网 时间:2024/05/02 23:06

1.屏幕尺寸 对角线的长度 单位英寸 1英寸=2.54cm
2.屏幕分辨率 屏幕横纵向上的像素点数 单位px 1px=1像素点 通常纵向乘以横向 例如 1920*1280
3.屏幕像素密度 每英寸的像素点数 dot per inch 单位dpi 与屏幕尺寸和屏幕分辨率有关
4.dpi 1920^2+1280^2 开根号 /4.95
5.dp 密度无关像素 以160dpi为基准 1dp=1px
6.sp 尽量使用偶数 推荐12 14 18 22 避免缩放时造成精度丢失 根据文字大小首选项进行收缩
7.市场上主流的手机分辨率 只要将所有的分辨率都找到 生成对应的values目录 那么屏幕适配就可以解决
这里写图片描述
8.将不同屏幕分辨率的图片要放到不同的bitmap…文件夹下面 如果放到错误的分辨率文件夹下 则内存占用过大。图片是吃内存大户
这里写图片描述
9.通过@dimen/x280 就可以在不同分辨率下 宽度都为280dp 解决屏幕适配问题
这里写图片描述
10.不同dpi对应的像素密度范围
这里写图片描述
11.因为手机和平板是用的两套布局 但是布局名称是一样的 我们首先判断该view是否存在 还有获取到是否是平板的布尔标识
这里写图片描述
12.使用weight属性 计算出控件的宽度 不要将控件宽或者高设置为match_parent 否则会出现相反的结果 要设置0dp
这里写图片描述
13.
1.使用尺寸限定符 layout-large 这是android3.2之前使用的 android3.2之后不这么使用
2.最小宽度限定符 layout-sw820dp sw small width android 3.2以后这么用
3.但是这两种方式不是很好 需要给布局起别名
在values下创建layout.xml文件 文件中只写一行代码

item name=”main” type=”layout” @layout/main item
item name=”istwo” type=”bool” true item
resources
使用时要用setContentView(R.layout.main);//手机平板就会根据main到
而在values-sw800dp-land(平板横屏) 也是创建layout布局文件 只是引用的布局是一个横屏的布局
resources
item name=”main” type=”layout” @layout/main_land item
item name=”istwo” type=”bool” true item

而在values-sw800dp-port(平板竖屏) 也是创建layout布局文件 只是引用的布局是一个竖屏的布局
resources
item name=”main” type=”layout” @layout/main_port item
item name=”istwo” type=”bool” true item
resources

不同文件夹下加载不同布局文件
item name=”istwo” type=”bool” true item通过这个属性来控制是哪种类型的布局

0 0
原创粉丝点击