首页
学习
活动
专区
圈层
工具
发布

Android技能树 — 屏幕适配小结

我们举例说下这块知识点: 要画一个 高和宽各为屏幕的一般的按钮,我们假设有二块屏幕,一块是100 X 100 ,一块是 200 X 200 ,那这时候第一块的屏幕上我们写Button 应该为: dpi / 160),而dpi又由分辨率和屏幕尺寸同时决定,安卓手机的碎片化太过严重,所以很多手机虽然分辨率不同及屏幕尺寸不同,造成最后的dpi...(其实主要原因就是dpi不是单独由分辨率来决定,同时还有屏幕尺寸影响,所以二个变量同时作用,造成不同分辨率的手机最后的density也可能相同。...2 各类适配方案 2.1 生成分辨率values文件夹 因为我们上面提过 , px = (dpi / 160) * dp, 但是dpi又是同时由分辨率和屏幕尺寸同时决定,造成了不同的分辨率,dpi可能一样...这样最终影响结果的就只是分辨率的了,分辨率越大的,x1的值越大。

1.2K30

将 UWP 的有效像素(Effective Pixels)引入 WPF

当我们说按钮的有效像素宽度为 200 时,指的是你在 WPF 的 XAML 或 C# 代码中写下了 Width="200"。...用户可以随时修改屏幕显示分辨率,修改系统或屏幕的 DPI 值。在显示分辨率与显示器实际物理分辨率不一致的情况下,用户还能设置画面的填充方式(居中或是拉伸)。...DPI 值设置为 96,则它的物理宽度是 1 英寸 DPI 值设置为 144,则它的物理宽度是 1.5 英寸 DPI 值设置为 192,则它的物理宽度是 2 英寸 在以上情况下,如果 DPI...谈显示器像素个数: 用户使用了最佳分辨率 在 DPI 值为 96 时,显示完按钮宽度所用的屏幕像素个数为 96 DPI 值设置为 192 时,则显示完按钮宽度所用的屏幕像素个数是 192 在以上情况下...,如果用户降低了分辨率 居中点对点显示,显示完按钮宽度所用的屏幕像素个数为 96 拉伸显示,显示完按钮宽度所用的屏幕像素个数大于为 96,虚拟的系统像素个数依然等于 96 接受现实 看看按钮实际的大小

2.1K21
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    适配完结篇一 - 超快速的Android屏幕适配方式

    在手机屏幕一定的情况下,如果分辨率越高那么该值则越大,这就意味着画面越清晰、细腻和逼真。...已知公式 px = density * dp; density = dpi / 160; 屏幕尺寸、分辨率、像素密度三者关系 通常情况下,一部手机的分辨率是宽x高,屏幕大小是以寸为单位,那么三者的关系是...: 以华为P7为例,计算其dpi值。...因为在每部手机出厂时都会为该手机设置屏幕密度,若其屏幕的实际密度是440dpi那么就会将其屏幕密度设置为与之接近的480dpi;如果实际密度为325dpi那么就会将其屏幕密度设置为与之接近的320dpi...假如设计图宽度为200,一个控件在设计图上标注的长度为3,只需要在初始化时定义宽度为200,绘制该控件时长度写为3pt,那么在任何大小的屏幕上该控件所表现的长度都为屏幕宽度的3/200。

    1.3K20

    一文搞懂DPI与分辨率的关系

    分辨率就是这张图用了多少块积木,比如“1920×1080”意味着横向1920块、纵向1080块,总共有200多万块积木(像素)。.../PPT平衡法则:72-150 DPI足够(高分辨率屏幕适配150 DPI)省流量技巧:用TinyPNG等工具压缩图片,在清晰度和加载速度间找平衡四、关于DPI的三大灵魂拷问Q1:手机相机设置里的DPI...一张72 DPI、5000×4000像素的图片,打印成6寸照片(约300 DPI)依然清晰;但强行把200×200像素的图改成300 DPI,打印出来还是马赛克画质。...五、总结:让技术参数为你所用记住这个黄金公式:清晰度=足够的像素量×合理的DPI设置下次修图时,先问自己三个问题:这张图用在哪儿?(屏幕显示/印刷/投影)需要多大物理尺寸?...(A4纸/手机屏幕/户外广告)原始素材质量如何?(像素是否够用)搞懂DPI和分辨率的关系,你就能避免90%的图片翻车现场。毕竟在这个视觉为王的时代,谁不想让自己的作品“360度无死角”呢?

    4.6K20

    WebApp开发-Google官方教程

    注意: 大于10,000的width值将被忽略,小于或等于320的值将会使得width的值等于设备的宽度(下面将会讨论)。大于10,000或者小于200的height值将被忽略。...这是一个浮点值,用以指出页面大小与屏幕大小相比的最小乘数。例如,如果你将这个值设置为“1.0”,那么这个页面将不能缩小,因为最小值和 target density为1:1的关系。...定义viewport的target density 一个屏幕像素密度是由屏幕分辨率决定的,通常定义为每英寸点的数量(dpi)。Android支持三种屏幕像素密度:低像素密度,中像素密度,高像素密度。...你可以通过使用viewport的target-densitydpi性质来改变目标屏幕像素密度。可以赋给它的值如下所列: device-dpi –使用设备原本的 dpi 作为目标 dp。... – 指定一个具体的dpi 值作为target dpi. 这个值的范围必须在70–400之间。

    1.8K20

    前端兼容性

    典型的桌面屏幕分辨率:1920x1080 典型的便携屏幕分辨率:1366x768 典型的平板屏幕分辨率:1920x1200 典型的移动屏幕分辨率:360x640 手机屏幕分辨率说明   由于手机屏幕尺寸过小...桌面屏幕分辨率说明   移动设备一开始就考虑了DPR,而Windwos桌面的分辨率由于历史原因却没有这一概念, 于是Windwos引入了DPI,最初是设置DPI,后来是设置DPI比例。...但需要注意的是与手机屏幕分辨率不同,桌面分辨率要除以DPI比例,才是逻辑分辨率。 如1920x1080设置DPI比例=1.25,逻辑分辨率实际为1536x864。....; } 多媒体类型 值 描述 all 用于所有多媒体类型设备 print 用于打印机 screen 用于电脑屏幕,平板,智能手机等。...舍弃小值 解决方案:不让边距重叠,可以给子元素加一个父元素,并设置该父元素设置:{overflow: hidden} 9、li中内容超过长度时,用省略号显示 li{ width: 200px; white-space

    2.9K20

    Android碎片化之屏幕适配

    只有在打印时这个缩写才有意义,在打印领域不存在 PPI的叫法,只说DPI,它表示打印机每英寸打印几个像素点。宽高同样像素下,dpi越大,打印出来的图案越小。...dip:或者叫dp,这是Android开发中特有的一种度量,称作屏幕无关像素,它不表示任何具体的长度或者像素点,这个值只有在具体屏幕密度的手机上,才会被转换为具体的像素值。这个时候才会有实际意义。...步骤1:以某一分辨率为基准,生成所有分辨率对应像素数列表 现在我们以320x480的分辨率为基准: 将屏幕的宽度分为320份,取值为x1~x320 将屏幕的高度分为480份,取值为y1~y480 然后生成该分辨率对应像素数的列表...比如说,如果我们为 xhdpi 设备生成了 200x200 px尺寸的图片,就应该按照相应比例地为 hdpi、mdpi 和 ldpi 设备分别生成 150x150、100x100 和 75x75 尺寸的图片...步骤3:通过引用 @drawable/id,系统都能根据相应屏幕的屏幕密度(dpi)自动选取合适的位图。

    1.8K30

    理一理屏幕尺寸那些事

    :1个物理毫米中所含的像素个数是不同的 ---- 2.手机英寸的概念 英寸是衡量手机屏幕的真实大小 我们买手机一般关心的是手机是多少多少英寸的,然后懂行的看看分辨率,那英寸代表什么?...屏幕尺寸.png 如果你想玩,其他的屏幕也可以试试:只要知道分辨率和多少英寸 ? 查看其他屏幕尺寸.png ---- 4.密度: 什么是密度?----紧密程度?...比如一个市的人口密度:合肥市面积为11445.1平方公里,人口为779万,人口密度为680.6人/平方公里 也就是合肥市平均 1平方公里 有680.6人 现在把屏幕当做土地,把像素点当做人,这些人一个一个有秩序地排着...(ppi)为402,被圈入了xxh的领域,OPPO-R801自身dpi(ppi)为164,被圈入了m的领域 xxh对应的dpi/m对应的dpi = 3 ?...----图片自身的dpi对屏幕设备的显示并没有效果,只对打印有影响 Q3:哥就想都显示250*200为什么这么难? ---- 难!

    1.4K20

    理一理屏幕尺寸那些事

    :1个物理毫米中所含的像素个数是不同的 ---- 2.手机英寸的概念 英寸是衡量手机屏幕的真实大小 我们买手机一般关心的是手机是多少多少英寸的,然后懂行的看看分辨率,那英寸代表什么?...屏幕尺寸.png 如果你想玩,其他的屏幕也可以试试:只要知道分辨率和多少英寸 ? 查看其他屏幕尺寸.png ---- 4.密度: 什么是密度?----紧密程度?...比如一个市的人口密度:合肥市面积为11445.1平方公里,人口为779万,人口密度为680.6人/平方公里 也就是合肥市平均 1平方公里 有680.6人 现在把屏幕当做土地,把像素点当做人,这些人一个一个有秩序地排着...(ppi)为402,被圈入了xxh的领域,OPPO-R801自身dpi(ppi)为164,被圈入了m的领域 xxh对应的dpi/m对应的dpi = 3 ?...----图片自身的dpi对屏幕设备的显示并没有效果,只对打印有影响 Q3:哥就想都显示250*200为什么这么难? ---- 难!

    1.3K20

    杂篇:理一理屏幕尺寸那些事

    如果你想玩,其他的屏幕也可以试试:只要知道分辨率和多少英寸 ---- 4.密度: 什么是密度?----紧密程度? 上学的时候应该听过线密度,面密度和体密度、或者人口密度吧。...比如一个市的人口密度:合肥市面积为11445.1平方公里,人口为779万,人口密度为680.6人/平方公里 也就是合肥市平均 1平方公里 有680.6人 现在把屏幕当做土地,把像素点当做人,这些人一个一个有秩序地排着...----Q1 实验图片:250*200,300dpi,res\mipmap-xhdpi\wy_250px_200px_300dpi.jpg 实验图片:250*200,72dpi,res\mipmap-xhdpi...(ppi)为402,被圈入了xxh的领域,OPPO-R801自身dpi(ppi)为164,被圈入了m的领域 xxh对应的dpi/m对应的dpi = 3 Q1:谁动了我的图片尺寸 ---mipmap的不同文件夹...----图片自身的dpi对屏幕设备的显示并没有效果,只对打印有影响 Q3:哥就想都显示250*200为什么这么难? ---- 难!

    1.5K30

    07-移动端开发教程-移动端视口

    在说分辨率的时候我们常常会把大的值说在前面,所以在PC端屏幕宽度比高度的值要大一点,第一个值一般是指的宽度第二个值为高度。 移动端正好相反,手机一般宽度都是小于高度,所以第一个值是宽度。...4K屏: 也叫QHD或UHD(超高清),最小分辨率是3840 * 2160,电视用的多 设备相机的像素: 640*480 = 307200 = 30万像素 1600*1200 = 1920000 = 200...DPI(Dots Per Inch),两个值是屏幕每英寸的像素数量,即像素密度(Screen density)。...一般的计算方法或者公式: DPI= 对角线分辨率 / 屏幕尺寸 屏幕对角线的分辨率也就是屏幕对角线上的像素点数,可以根据已知的横纵分辨率通过勾股定理计算得。...补充:三角形勾股定理 计算如下手机dpi: 手机dpi计算 勾股定理算出对角线的分辨率 对角线分辨率除以屏幕尺寸:2203/5≈440dpi 1.4 设备像素(device pixel)与逻辑像素

    2.3K80

    Windows微信DPI适配

    一、背景 随着近些年屏幕设备的不断发展,各种显示设备的分辨率也越来越高,在尺寸保持基本不变的情况下,分辨率越高,设备的DPI也越高,清晰度也就越高。...假设现在有两台显示器,显示器A:22寸,分辨率1920*1080,DPI=100。显示器B:22寸,分辨率3840*2160,DPI=200。显示器B的DPI是显示器A的2倍。...Windows以DPI为96作为100%大小的基准。提供了120、144、192四个标准的DPI值。其各自对应了一个缩放比例。 ?...例如,3840*1920 DPI=192的显示器,对于应用而言,屏幕上的两个像素点变成了原来的一个像素点,所以其分辨率相当于变成了1920*1080,这个分辨率就称之为有效分辨率。...如果想要支持Per Monitor模式的DPI缩放,则需要设置dpiAware值为true/PM。这种方式是官方推荐的方式。

    6.6K90

    07-移动端开发教程-移动端视口

    在说分辨率的时候我们常常会把大的值说在前面,所以在PC端屏幕宽度比高度的值要大一点,第一个值一般是指的宽度第二个值为高度。 移动端正好相反,手机一般宽度都是小于高度,所以第一个值是宽度。...4K屏: 也叫QHD或UHD(超高清),最小分辨率是38402160,电视用的多 设备相机的像素: 640*480 = 307200 = 30万像素 1600*1200 = 1920000 = 200万像素...一般的计算方法或者公式: DPI= 对角线分辨率 / 屏幕尺寸 屏幕对角线的分辨率也就是屏幕对角线上的像素点数,可以根据已知的横纵分辨率通过勾股定理计算得。...计算如下手机dpi: ? 手机dpi计算 勾股定理算出对角线的分辨率 ?...该属性的默认值为yes,即可被缩放(如果使用默认值,该属性可以不定义);当然,如果你的应用不打算让用户拥有缩放权限,可以将该值设置为no。

    2.7K120

    android学习笔记----关于图形的基本处理讲解

    /blog/2178415 缩放步骤: 1.获取图片分辨率,比如2400*3200(水平为宽,竖直为高) 2.获取手机分辨率,比如320*480 3.计算缩放比(图片的宽除以手机分辨率的宽,图片的高除以手机分辨率的高...设备分辨率越来越高,屏幕上具有的像素数量比这里显示的还要多,但是我们暂时先讨论这五大类: 密度独立像素来表示宽度和高度值,也就是说我们可以规定按钮的尺寸为 48 x 48 dip,实际上 Android...dp和px之间的关系:1dp是屏幕密度为160dpi时的1px,也就是说在密度值为160dpi的情况下,1dp=1px。...最后我们来说一下怎么计算dpi dpi就是一英寸显示多少像素点,也就是dpi=像素/英寸(对角线长度) 以1920*1080,5.0英寸的屏幕为例: 先利用勾股定理(A的平方=B的平方+C的平方),我们可以算出来对角线的像素是...dpi为420,缩放后应该width=200,height=175 // 在对应的drawable-420dpi文件夹没有对应的图,而在drawable-640dpi有图,那么

    1.5K20

    Android图片资源

    例如,为不同的尺寸和分辨率的屏幕提供不同的图片资源,这样可以让你的应用在不同的设备上显示最适合此设备分辨率/尺寸的不同大小的图片。...屏幕尺寸和像素密度都有各自的分级,它们是相互独立的。大屏幕可以是小的分辨率,而小屏幕可以是大分辨率。...正如DIP它的名字,它表示一种逻辑单位,和实际pxiel之间存在着转换关系,系统会自动在不同设备像素密度时把以dp为单位的大小缩放为合适的具体像素值。...具体做法是: 像素密度分级mdpi为基准,它的dpi值为160,此时1dp = 1px。对于运行程序的设备,Android系统会根据其尺寸和屏幕像素来计算出它的像素密度分级。...不同像素密度下dp和px的转换不同,公式是: px = dp * (dpi / 160),根据公式可以知道,不同像素密度下的dp转换为px时对应的缩放比例和它们之间的dpi值是成正比的。

    2K100

    pdf转图片不清晰怎么办

    pdf转图片不清晰怎么办 将 pdf 转为图片看起来简单,导出为 png 或 jpg 然后分享,但有时得到的图片模糊,像素化或难以阅读,图像质量差可能来自错误的导出设置,源分辨率低,或选择了错误的文件格式...,如果是扫描的 pdf,尽量找到原始文档或要求更高 dpi 的扫描,磨针工具软件在查看 dpi 时能显示详情,普通人用磨针工具软件就能看出是否为矢量文本....选择合适的导出分辨率 导出时把 dpi 或分辨率设置高一点,屏幕查看 150 到 200 dpi 可以接受,打印或近距离阅读选择 300 dpi 或更高,提高 dpi 会增大文件但能保持文字和线条清晰,...避免使用 72 dpi 这种很低的值,那通常会导致模糊,如果你不懂设置,用磨针工具软件的默认高分辨率选项可以省心....为网页或邮件优化 如果需要为网页或邮件减小文件,尽量减少图片尺寸而不是降低 dpi,裁剪掉无用边缘,使用 png-8 或优化过的 png 工具来减小体积,对很多读者来说,清晰的 150 到 200 dpi

    72210

    Android中的像素密度,屏幕密度,屏幕大小,分辨率,ldpi,mdpi,xhdpi,xxhdpi

    3 像素密度 像素密度(dpi,dots per inch;或PPI,pixels per inch):每英寸上的像素点数,结合屏幕大小和屏幕分辨率如果5.0英寸的手机的屏幕分辨率为1280×720,那么像素密度为...手机出厂之后屏幕密度,包括X,Y轴方向的像素密度都是固定值。...android以像素密度160dpi为基准对屏幕进行划分,当像素密度为160dpi时屏幕密度为1.0,像素密度为120dpi时屏幕密度为0.75,像素密度为320dpi时屏幕密度为2.0....,Android中获取的屏幕密度,不是对应屏幕真实的屏幕密度值,类似1280720和1290730都会被认为是720p的手机,屏幕密度都是2.0。...dp与px的转换 系统密度为160dpi的中密度手机屏幕为基准屏幕,即320×480的手机屏幕中,1dp=1px。

    9.8K42
    领券