android之解决屏幕大小与密度不同导致的差异
来源:互联网 发布:excel2003提取重复数据 编辑:程序博客网 时间:2024/04/29 14:37
解决屏幕大小相同分辨率不同:
dp(与密度无关的像素):
逻辑长度单位,在 160 dpi 屏幕上,1dp=1px=1/160英寸。随着密度变化,对应的像素数量也变化,但并没有直接的变化比例。
例:
a机器:屏幕密度:160像素/英寸 此时1dp=1px=1/160英寸。
b机器:屏幕密度:240像素/英寸 此时1dp= 1px * (240/160) = 1.5px 。
dp能解决密度不同所带来的差异,但是不能解决长度不同密度相同所带来的差异:
解决分辨率相同屏幕大小不同:
如果左对齐画一张160dp大小的图片,效果会不同
例:
a机器:屏幕密度:160像素/英寸 宽1英寸 此时填满a机器屏幕
b机器:屏幕密度:160像素/英寸 宽2英寸 此时只为b机器屏幕的一半
如果b机器的显示效果要和a机器相同:图片的大小需要设置为160dp*(2/1)=320dp 此时填满b机器屏幕
综合解决屏幕密度不同屏幕大小也不同:
如果左对齐画一张160dp大小的图片,效果会不同例:a机器:屏幕密度:160像素/英寸 宽1英寸 此时填满a机器屏幕b机器:屏幕密度:80像素/英寸 宽1.5英寸 此时填满b机器1英寸屏幕如果b机器的显示效果要和a机器相同:图片的大小需要设置为160dp*(1.5/1)=240dp 此时填满b机器屏幕所以综合解决的办法为:1.在a机器上设计好外观2.获得a机器组件的dp,和a机器的lenth和wide3.获得b机器的lenth和wide, 求出b机器组件的dp-b = dp-a*(lenth-b/lenth-a)带入组件4.系统根据b机器的屏幕密度和160dpi进行对比获得px-b = 1px*(dpi-b/160)得到最终px
- android之解决屏幕大小与密度不同导致的差异
- Android获取屏幕的大小与密度
- Android屏幕密度与UI大小显示
- Android手机的屏幕大小和密度
- Android Developers:支持不同的屏幕密度
- Android Developers:支持不同的屏幕密度
- Android随记------屏幕密度掺入BitmapFactory里decodeFile与decodeResource的差异
- 屏幕密度掺入BitmapFactory里decodeFile与decodeResource的差异
- 屏幕密度掺入BitmapFactory里decodeFile与decodeResource的差异
- 屏幕密度掺入BitmapFactory里decodeFile与decodeResource的差异
- Android官方开发文档Training系列课程中文版:多样屏幕之支持不同的屏幕密度
- React Native 之 获取不同屏幕的像素密度
- Android中不同屏幕密度对应的文件夹
- 【Android Training - 02】适配不同的屏幕[Lesson 2 - 适配不同屏幕密度]
- Android Training - 适配不同的屏幕(Lesson 2 - 适配不同屏幕密度)
- android webview 任何密度,屏幕大小。
- android webview 任何密度,屏幕大小
- Android应用:获取屏幕大小和密度
- 快速排序
- 黑马程序员-------反射
- database editor
- 栈的应用之-----行编辑程序
- linux 编程----内存泄露检测之mtrace
- android之解决屏幕大小与密度不同导致的差异
- 【解决】12306网上购票页面加载缓慢
- 怎样使用OpenCV进行人脸识别 [停止更新]
- 香港电台知名主持人梁继璋曾给孩子写过一封信
- 【解决】快速批量删除word文档中的空行
- 设计模式——单一职责原则
- c#中is和as的用法
- 夏秋之季
- POJ 1459 (最大流 入门题)