• [置顶] xamarin android 布局尺寸了解


    为了使UI界面在不同大小的移动端显示器上能够正常显示,大家可能都知道使用sp作为字体大小的单位,dp作为其他元素长度的单位。

    前几天看了一篇文章关于 App设计规范的,文章用心写的非常好,这里是链接 http://www.25xt.com/appdesign/10821.html 。但是费解的是所有的长度单位都是用px。好吧,“”原谅“这位UI设计师良心ps的一张app设计规范图。在UI布局的时候有必要了解一下android设备的适应了。

    先来问大家几个问题,

    1.android设备中有哪些 度量单位?

    2.像素的最小单位是多少?

    3.什么是屏幕分辨率?

    4.什么是独立像素密度?

    5.屏幕尺寸是指长和宽的物理尺寸?

    说实在了,刚开始这几个问题我知道的也很模糊,也就知道个大概的样子。看了这篇文章你就明白了

    1.屏幕尺寸

    Screen size屏幕尺寸是表示手机的实际物理尺寸,并不是说设备的长和宽,而是对角线的长度,单位是英寸,1in=2.54cm.市场上常见的屏幕尺寸有3.5、3.7、4.2、5.0、5.5、6.0

    2.屏幕分辨率

    虽然这个问题太基础了,的确。市场上主流分辨率有480*800 、720*1280、1080*1920。在计算机屏幕的水平和垂直方向上有 多少个像素,屏幕上显示的像素个数,单位尺寸内像素点越多,显示的图像就越清楚。单位是px,1px=1个像素点。看看苹果手机平布尺寸和分辨率吧。

    苹果型号 主屏屏幕大小 系统 摄像
    iPhone1代 3.5英寸320×480像素 iOS3.0 200万像素
    iPhone2代
    (iPhone 3G)
    3.5英寸320×480像素 iOS3.0 200万像素
    iPhone 3GS 3.5英寸480x320像素 iOS3.0 300万像素
    iPhone4 3.5英寸960x640像素 iOS5.0 500万像素
    iPhone4S 3.5英寸960x640像素 iOS7.0 700万像素
    iPhone 5 4英寸1136x640像素 iOS6.0 800万像素
    iphone5s 4英寸1136x640像素 iOS7.0 800万像素
    iphone5c 4英寸1136x640像素 iOS7.0 800万像素
    iphone6 4.7英寸1334x750像素 iOS8.0 800万像素
    iphone6s 4.7英寸1334x750像素 iOS9 1200万像素
    iphone6 plus 5.5英寸1920x1080像素 iOS8.0 800万像素
    iphone6s plus 5.5英寸 1920x1080像素 iOS 9 1200万像素

    下面我们就来说说这些基本长度单位吧。

    3.android中元素的常用度量单位dp

    dp:density independent pixel 密度无关的像素,也就是设备独立像素,dip同dp相同。也就是说它是一个相对的度量单位,在现实生活我们接触的所有度量单位都是绝对长度(计算机的确有趣),那么dp的物理尺寸是怎么一个比例关系呢,看图,

    在不同分辨率中,其长度不同,所以我们常用dp来作为android设备中的长度。如图,使用dp作为元素的单位,其物理大小并没有发生太大变化

    4.android不常用的度量单位px 、sp 、pt

    在浏览器中我们还知道字体大小的单位还有em。在android设备还有一些几乎不常用的字体度量单位
    1.in:(英寸)长度单位,
    2.mm:(毫米)长度单位
    3:pt (磅)point ,标准长度单位,1pt=1/72英寸,常用于用于印刷业

    5.android中常用的字体度量单位px和sp的区别:

    px和sp都可以用来做字体大小的单位,在浏览器中我们经常使用px来表示字体大小的单位,但是在android设置中我们经常使用sp来表示字体大小的单位,首先我们要知道的是px是绝对度量单位,而sp是相对度量单位。
    什么是像素px?
    像素是组成一张照片的基本单位,某 广告说的好,柔光双摄,照亮你的美,有的手机主打照相,相片清晰度高,拍的相片骚气。这里所说的就是像素高,一像素代表一个点,相同大小的相片,像素越高,也就像素点分布密集,清晰度就越高,反之也如此。
    px:pixel像素,不同设备显示效果相同, 像素的最小单位是1个像素,虽然在ps中我们能设置小于0.1的单位,如图

    但是在浏览器和移动设备中不能设置小于1像素单位的,即时设置小于1的,实际最终显示的结果也是四舍五入。在android中几乎不用px来作为字体大小的单位,用px的缺点很明显,在于它是一个绝对长度,在每英寸160点的显示器和在每英寸240的显示器字体大小不一样。如图在不同分辨率中,显示效果的物理大小还是有一定区别的


    什么是sp?

    sp是作为android中字体的度量单位,也可用来描述行距,这是一个相对的度量单位。
    ppi:pixel per inch,表示的是每英寸所拥有的像素(pixel)数目,ppi越高,显示则更清晰。关于dpi和ppi的区别,链接 https://zhidao.baidu.com/question/181166877.html
    sp与px的换算公式是:1sp*ppi/160=1px;
    android规范字号sp 对应的像素高度px
    12 20
    14 24
    18 30
    22 36


    6.android尺寸适配原理:

    如果要讲解android元素尺寸适配,可能要写一篇文章,才能说清楚。这里推荐这篇文章 http://blog.csdn.net/lmj623565791/article/details/45460089。这里我们就简单了解一下drawable目录吧,新建的xamarin android 项目,并没有drawable-hdpi, drawable-ldpi, drawable-mdpi, drawable-xhdpi四个目录。好像java里面会自动创建,UI中的各种小图标在需要放在这些不同dpi中的文件夹,所以我们需要去创建这几个文件夹。

    drawable-hdpidrawable-mdpidrawable-ldpi、drawable-xhdpi的区别: 

    (1)drawable-hdpi存放高分辨率的图片,(480*800),(480x854) 

    (2)drawable-mdpi存放中等分辨率的图片, (320*480) 

    (3)drawable-ldpi存放低分辨率的图片,如(240*320) 

    (4)drawable-xhdpi 里面超高分辨率图片600*960

    7.Android UI设计中的48dp定律原则

    在设置元素尺寸时我们已经知道要dp来表示的,在通常情况下48dp在物理屏幕上差不多就是9毫米的大小,在手指点触的元素总一般元素的大小在7毫米到10毫米之间,好处时点击率增加,正确率提高,美观设计上比较合理。所以在可点触元素的物理高度宽度都应大于48dp,也就是说这个物理尺寸在任何设备上都不会小于7毫米,太小点中率降低,错误率提高。
    当然,这仅仅是一个推荐值,加入的你的app是使用对象仅仅是6到12岁的小孩子,手指没那么大,也没有必要说一定不能小于48dp。定律在心中,灵活运用才能不能定律所束缚。
  • 相关阅读:
    springmvc log4j 配置
    intellij idea maven springmvc 环境搭建
    spring,property not found on type
    intellij idea maven 工程生成可执行的jar
    device eth0 does not seem to be present, delaying initialization
    macos ssh host配置及免密登陆
    centos7 搭建 docker 环境
    通过rest接口获取自增id (twitter snowflake算法)
    微信小程序开发体验
    gitbook 制作 beego 参考手册
  • 原文地址:https://www.cnblogs.com/zhangmumu/p/7374769.html
Copyright © 2020-2023  润新知