首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Android屏幕适配AndroidAutoSize的使用「建议收藏」

    > 在1080*2160 DPI400显示效果 在Pixel_XL 1440*2560 560DPI显示效果 可以看到两个宽度的显示效果是一样的 下面我们看下以高度为适配基准 AndroidAutoSize...显示效果 在Pixel_XL 1440*2560 560DPI显示效果 可以看到底部的两块区域刚好填充完屏幕 副单位的使用 初始化 //AndroidAutoSize 默认开启对 dp...的支持, 调用 UnitsManager.setSupportDP(false); 可以关闭对 dp 的支持 //主单位 dp 和 副单位可以同时开启的原因是, 对于旧项目中已经使用了 dp 进行布局的页面的兼容...不需再把像素转化为 dp //AndroidAutoSize 默认开启对 dp 的支持, 调用 UnitsManager.setSupportDP(false); 可以关闭对 dp 的支持 //主单位 dp 和...unitsManager.apply { isSupportDP = true supportSubunits = Subunits.MM } 然后在布局文件中使用mm pt in单位即可 宽高适配基准和主单位一致

    4.3K20

    强大的ConstraintLayout:使用ConstraintLayout打造响应式UI

    > 看下效果(图上增加了两条参考线,方便比对底部区域的动态拉伸的效果): [3.3'' 240 x 400 (WQVGA, ldpi)] [5.0'' 1080 x 1920 (Pixel 2, 420dpi...> 效果如下: [3.3'' 240 x 400 (WQVGA, ldpi)] [5.0'' 1080 x 1920 (Pixel 2, 420dpi)] [6.3'' 1440 x 2960 (Pixel...3 XL, 560dpi)] 至此,根据屏幕大小,动态适配头部、中部、底部三个区域的需求,算是完成了。...x 2960 (Pixel 3 XL, 560dpi)] 头部为gone,中部区域效果看起来正常,如期拓展到顶部,但看右侧,描述1:1偏好限制的约束参照物,贴近了顶部。...[顶部和底部均为`gone`,6.3'' 1440 x 2960 (Pixel 3 XL, 560dpi)] 顶部和底部均为gone,这回中部区域效果就不如预期般同时拓展到顶部和底部了,从右侧看,描述1

    3.5K21

    Android Bitmap转I420的坑,以及图文详解YUV420数据格式

    今天Android要把Bitmap里的数据转成I420,用的YUV库,但是总有色差。...NV12和NV21属于YUV420格式,是一种two-plane模式,即Y和UV分为两个Plane,但是UV(CbCr)为交错存储,而不是分为三个plane。...YUV4:2:0 ---> YUV4:2:2  Y不变,将U和V信号值的每一行分别拷贝一份形成连续两行数据。 在YUV420中,一个像素点对应一个Y,一个4X4的小方块对应一个U和V。...yuv yuv      YUV420P,Y,U,V三个分量都是平面格式,分为I420和YV12。...I420格式和YV12格式的不同处在U平面和V平面的位置不同。在I420格式中,U平面紧跟在Y平面之后,然后才是V平面(即:YUV);但YV12则是相反(即:YVU)。

    3.8K30

    Android入门学习笔记(3) 像素换算dp

    屏幕密度(DPI) 就是每英寸的像素点数,数值越高当然显示越清晰,通常 与“正常”或“高”密度屏幕相比,“低”密度屏幕在给定物理区域的像素较少。...dp 单位转换为屏幕像素很简单: px = dp * (dpi / 160)。 例如,在 240 dpi 屏幕上,1 dp 等于 1.5 物理像素。...六种通用的密度: ldpi(低)~120dpi mdpi(中)~160dpi hdpi(高)~240dpi xhdpi(超高)~320dpi xxhdpi(超超高)~480dpi xxxhdpi(超超超高...image.png 查看AndroidStudio用于调试手机的像素大小 image.png 420dpi,1080*1920 根据以上知识进行计算总共的长宽dp: 横向:1080/(420/160...)=411.428 纵向: 1920/(420/160)=731.428 更改以上的代码: 96-->(411.428/4)=103 68-->(731.428-250)/4=120 image.png

    2.1K00

    深度解析视频颜色空间YUV420P和YUV420SP的异同

    正文 一、共同点 首先,我们来看一下YUV420P和YUV420SP二者的相同点,后边再介绍二者的不同点。...YUV420P和YUV420SP颜色空间模型有如下几个相同点: 1、无论是YUV420P,还是YUV420SP,它们都是YUV颜色空间模型的子类型。...同时,YUV420P又可以细分为YU12和YV12两种子类型,二者的差异主要体现在U分量和V分量的存储顺序上,下面会详细介绍。...同时,YUV420SP又可以细分为NV12和NV21子类型,二者的差异也是主要体现在U和V分量的存储顺序上,下面详细介绍。...NV12模型的存储顺序是先存Y分量,再将UV分量交替存储(注意:用词,是UV不是VU),具体形式可以参考下图: 2、NV21格式 NV21 是Android手机Camera摄像头自带的默认预览格式。

    57410

    对yuv存储格式中的yuv420p和yuv420sp的理解

    yuv常用于视频压缩和传输中,因为它可以更有效地表示人眼对亮度和色度的敏感度不同的特性。人眼对亮度更加敏感,而对色度则不那么敏感。...二.yuv420p和yuv420sp的分类以及它们的区别   yuv420p和yuv420sp都是planar平面格式,区别仅在于对uv分量的存取。...yuv420p是先存储完所有的u分量,然后再存储v分量,或者反过来。而yuv420sp是uv/vu交替存储。...见下图,是yuv420p的存储示意图:   图中先存储完所有的y分量后再存储u和v分量,其中u在v的前面,这也称为yu12/i420格式,如果先v再u的话,就是yv12格式。   ...见下图,再来看一下yuv420sp的存储示意图:    图中先存储完所有的y分量,然后交替存储u和v分量,其中u在v的前面,这种方式也称为nv12格式,如果先v再u,则称为nv21格式。

    4.3K10

    【Android RTMP】Android Camera 视频数据采集预览 ( NV21 图像格式 | I420 图像格式 | NV21 与 I420 格式对比 | NV21 转 I420 算法 )

    文章目录 一、 NV21 与 I420 数据格式转换 二、 NV21 数据格式 三、 I420 数据格式 四、 NV21 格式与 I420 格式对比 五、 NV21 与 I420 图像大小 六、 NV21...YUV420 格式 : ① 两个分支格式 : NV21 图像格式 和 I420 图像格式都属于 YUV420 图像格式的分支 ; ② YUV 说明 : YUV 各种中的 Y 表示明亮度和灰度 , UV...表示色度和饱和度 ; ③ 黑白图片 : 如果只有 Y 数据 , 那么就是灰度图片 , 这张图片是黑白的 ; UV 数据表示的是图像的色彩 ; ④ 存储原理 : 灰度数据 Y 保证全部满足 , 多个灰度数据公用...图像大小 ---- NV21 与 I420 图像大小 : ① 推导过程 : 4 像素值数据 : 4 个像素值 , 有 4 个 Y 灰度数据 , 占 4 字节 ; 1 个 Y 和...; 先将 NV21 格式数据中的 Y 灰度数据拷贝出来放在一个数组中 , 再将 NV21 数据中的 V 数据 , 和 U 数据分别拷贝出来 , 这里得到三个数组 , 分别存储 Y 数据 , U 数据

    1.2K10

    Android屏幕适配方案分析

    dp如何计算成px android中的dp在渲染前会将dp转为px,计算公式: px = density * dp; density = dpi / 160; px = dp * (dpi.../ 160); 而dpi是根据屏幕真实的分辨率和尺寸来计算的,每个设备都可能不一样的。...为420,我们同样设置一个View为187dp宽 density = (dpi = 420) / 160 = 2.6 屏幕总宽度dp = 1080 / density = 415 找到文件夹values-sw410dp...为560,我们同样设置一个View为187dp宽 density = (dpi = 420) / 160 = 3.5 屏幕总宽度dp = 1440 / density = 411 找到文件夹values-sw410dp...-SmallestWidth 限定符适配方案 Android 屏幕适配终结者 Android 目前最稳定和高效的UI适配方案 广而告之 本文发布于薄荷前端周刊,欢迎Watch & Star ★,转载请注明出处

    1.4K10

    提示Android屏幕适配方案分析

    dp如何计算成px android中的dp在渲染前会将dp转为px,计算公式: px = density * dp; density = dpi / 160; px = dp * (dpi.../ 160); 而dpi是根据屏幕真实的分辨率和尺寸来计算的,每个设备都可能不一样的。...指的是Android会识别屏幕可用高度和宽度的最小尺寸的dp值(其实就是手机的宽度值),然后根据识别到的结果去资源文件中寻找对应限定符的文件夹下的资源文件。...为420,我们同样设置一个View为187dp宽 density = (dpi = 420) / 160 = 2.6 屏幕总宽度dp = 1080 / density = 415 找到文件夹values-sw410dp...为560,我们同样设置一个View为187dp宽 density = (dpi = 420) / 160 = 3.5 屏幕总宽度dp = 1440 / density = 411 找到文件夹values-sw410dp

    1.3K40

    【Android 屏幕适配】屏幕适配基础概念 ① ( Android 与 iOS 屏幕宽高比种类 | 屏幕像素密度 DPI )

    文章目录 一、Android 与 iOS 屏幕宽高比种类 二、屏幕像素密度 参考文档 : 设备兼容性概览 屏幕兼容性概览 支持不同的像素密度 声明受限屏幕支持 一、Android 与 iOS 屏幕宽高比种类...---- Android 屏幕尺寸类型如下 , 安卓设备的屏幕尺寸复杂性远远高于 iOS 设备 , Android 设备有两万种屏幕类型 , iOS 只需要适配五种分辨率即可 ; iOS 屏幕尺寸如下..., 只需要适配有限的几种屏幕类型即可 ; 二、屏幕像素密度 ---- 屏幕像素密度 的单位是 DPI , 是 Dots Per Inch 的缩写 , 也就是每 英寸 的 像素点 个数 ; 屏幕尺寸...指的是 屏幕 斜对角的 英寸 长度 ; 假设屏幕尺寸为 6.5 寸 , 屏幕的宽高分辨率为 1080 \times 1920 , 计算该屏幕的 屏幕像素密度 ( DPI , Dots Per Inch...上的像素个数 : 对角线上的像素个数 = \sqrt{分辨率宽度 ^2 + 分辨率高度^2} = \sqrt{1080 ^2 + 1920^2} \approx 3253 ② 然后计算每英寸的像素个数 : DPI

    7.1K30

    Android 目前最稳定和高效的UI适配方案

    刚好,近期准备对糗事百科Android客户端设计一套UI尺寸适配方案,可以和小伙伴们详细的聊一聊这个问题。...我们都知道一个公式: px = dp(dpi/160) 系统都是通过这个来判断px和dp的数学关系, 那么这里又出现了一个问题,dpi是什么呢?...而在不同分辨率下,dpi将会不同,比如: ... 1080*720 1920*1080 dpi 320 480 dpi/160 2 3 根据上面的表格,我们可以发现,720P,和1080P的手机,dpi...的Pixel2(19201080)的dpi是420,也就是说,在Pixel2中,1dp=2.625px,这样会导致相同分辨率的手机中,这样,一个100dp100dp的控件,在一般的1080P手机上,可能都是...为了更形象的展示,假设我们在布局文件中把一个ImageView的宽度设置为360dp,那么在下面两张图中表现是不一样的: 图一是1080P,480dpi的手机,图二是1080P,420dpi的手机 ?

    1.6K20

    Android开发稳定和高效的UI适配方案总结

    刚好,近期准备对糗事百科Android客户端设计一套UI尺寸适配方案,可以和小伙伴们详细的聊一聊这个问题。...我们都知道一个公式: px = dp(dpi/160) 系统都是通过这个来判断px和dp的数学关系, 那么这里又出现了一个问题,dpi是什么呢?...而在不同分辨率下,dpi将会不同,比如: ... 1080*720 1920*1080 dpi 320 480 dpi/160 2 3 根据上面的表格,我们可以发现,720P,和1080P的手机,dpi...的Pixel2(1920*1080)的dpi是420,也就是说,在Pixel2中,1dp=2.625px,这样会导致相同分辨率的手机中,这样,一个100dp*100dp的控件,在一般的1080P手机上...为了更形象的展示,假设我们在布局文件中把一个ImageView的宽度设置为360dp,那么在下面两张图中表现是不一样的: 图一是1080P,480dpi的手机,图二是1080P,420dpi的手机 ?

    65830
    领券