android适配

android - 多屏幕适配相关

无人久伴 提交于 2020-03-25 03:15:12
1、基本概念 屏幕大小(screen size) – 屏幕的实际大小,用屏幕对角线长度来衡量(比如3.4寸,3.8寸)。android把屏幕分为以下4种:small,normal,large,extra large。 怎么判断? 屏幕密度(Screen Density) - 一块实际的屏幕区域有多少个像素,一般用dpi衡量(每英寸有多少个点)。相比起medium、high屏幕密度的设备,在一块确定大小的屏幕区域l密度为low的屏幕拥有的像素更少。android把屏幕密度分为4种:low,medium,high,extra high。 如何判断是ldpi,mdpi,hdpi? 方向(orientation) - 屏幕方向分为landscape(横屏)和portrait(竖屏)。 分辨率(Resolution) - 屏幕上的总实际像素数。对屏幕进行适配时,一般不关注它的分辨率,只关注它的屏幕大小和密度。 与密度无关的像素(Density-independent pixel,dp或dip) - 为了保证你的UI适合不同的屏幕密度,建议你采用dp来定义程序UI。 它的计算方法为:px = dp * (dpi / 160) sp(scale-independent pixel) 如何分辨一个屏幕是ldpi、mdpi、hdpi的方法, 见下图 2、怎样适配多种屏幕 a

Android适配总结

ぃ、小莉子 提交于 2020-03-24 19:58:47
1.dp与px的 密度类型 代表的分辨率 屏幕密度 换算 比例 低密度(ldpi) 240x320 120   1dp=0.75px 3 中密度(mdpi) 320x480 160 1dp = 1px 4 高密度(hdpi) 480x800 240 1dp = 1.5px 6 超高密度(xhdpi) 720x1280 320 1dp = 2px 8 超超高密度(xxhdpi) 1080x1920 480 1dp = 3px 14 在Android中,规定以160dpi(即屏幕分辨率为320x480)为基准:1dp=1px,一般是以xhdpi较多,即1dp = 2px; 2.图标的各个屏幕密度的对应尺寸 屏幕密度 图标大小 mdpi 48x48px hdpi 72x71px xhdpi 96x96px xxhdpi 144x144px xxxhdpi 192x192px 3.布局适配:   ①layout-large命名布局文件,只适用于3.2之前版本;   ②使用了layout-sw 600dp的最小宽度限定符,即无论是宽度还是高度,只要大于600dp,就采用layout-sw 600dp目录下的布局;   ③如果适配3.2之前的和3.2之后的版本,因为布局一样,只是名字不一样,所以用@layout/main_twopanes,就避免了重复定义布局文件的情况   ④values

安卓屏幕知识了解与屏幕适配技巧

☆樱花仙子☆ 提交于 2020-03-17 13:35:31
某厂面试归来,发现自己落伍了!>>> 我们先来了解一下基本的概念 屏幕尺寸 :屏幕对角线长度,如图。 (换算单位:1英寸 ≈ 2.54厘米) Density 指像素密度。 假如同样是1080*1920的屏幕,屏幕越小当然视觉效果会更好更清晰,像素密度也就更大。 DPI 全称 Density Per Inch , 每英寸的像素个数, 平常使用不多 。 (绝大部分手机的DPI计算方式: DPI = density × 160 )【 为啥是160? 因为第一款Android设备:HTC的T-Mobile G1,是 属于 160dpi的 】 DP 也称 DIP 全称 Density independent pixels 密度无关像素 。 来两个例子: 栗子一号 : 手机屏幕 1080 * 1920 通过系统方法 metrics.density 得知 Density 值为3.0。 那么可以得知: 该手机屏幕的DPI = 3.0 × 160 = 480DPI 要填充满屏幕宽度1080px,需要 1080 ÷ 3.0 = 360dp 【有兴趣的小伙伴可以试下:查看手机屏幕宽度px,然后获取手机Density值,之后可以通过画一根带颜色的横线测试一下,是否是设置成计算出的dp正好填满,而略低于此dp是即将填满状态 】 栗子二号 : Pad,手机屏幕1600 * 2560 , 通过系统方法

h5 移动端适配方案思考

北战南征 提交于 2020-03-15 12:31:19
基础概念 CSS像素(CSS pixels) 这个是浏览器使用的抽象单位,用来精确度量网页上的内容。平时经常写的width:100px;height:100px;都是与设备无关的。 设备独立像素(device independent pixels),也可以称为设备无关的逻辑像素 meta里面设置width=device-width,这个device-width就是设备独立像素 在chrome里 看到的ip6为375 667,ip4为320 480等等都是设备独立像素, 它们在数值上与css数值是相等的 。 设备像素(device pixels ),也可以称为物理像素 是显示屏的最小物理单位 ,每一像素都包含自己的颜色、亮度。像素是没有大小的、是一个抽象概念、是一个相对单位。 关于像素有一个常见的错误理解:认为像素是一个宽高相等的小方块,并且的像素都是“那么大”,但是不知道这个宽高的具体数字。 分辨率 泛指量测或显示系统对细节的分辨能力。以ip6手机屏幕为例,分辨率为750×1334,这是指屏幕纵向能显示1920个像素,横向能显示1080个像素 设备像素比,也成dpr 设备像素比(简称dpr)定义了物理像素和设备独立像素的对应关系,它的值可以按如下的公式的得到: 设备像素比 = 物理像素 / 设备独立像素 // 在某一方向上,x方向或者y方向 适配方案1-固定viewport 好处

今日头条屏幕适配方案(AndroidAutoSize)

大城市里の小女人 提交于 2020-03-07 02:34:38
鸿洋提出的屏幕适配 AndroidAutoLayout ,目前已经停止维护,故不建议使用 今日头条适配方案AndroidAutoSize框架链接: https://www.jianshu.com/p/4aa23d69d48 ,以及关于该方案的文章: https://www.jianshu.com/p/4aa23d69d481 下面我做了一下简单的梳理,便于自己更好的掌握,多谢大神为我们做的贡献! AndroidAutoSize 和 AndroidAutoLayout 的区别: AndroidAutoLayout 只能使用 px 作为布局单位,而 AndroidAutoSize 恰好相反,在布局中 dp、sp、pt、in、mm 所有的单位都能支持,唯独不支持 px,这也意味着 AndroidAutoSize 和 AndroidAutoLayout 在项目中可以共存,互不影响,所以使用 AndroidAutoLayout 的老项目也可以放心的引入 AndroidAutoSize,慢慢的完成屏幕适配框架的切换 下面主要介绍下今日头条的适配方案: AndroidAutoSize 在使用上非常简单,只需要填写设计图尺寸这一步即可接入项目,但需要注意的是,AndroidAutoSize 有两种类型的布局单位可以选择,一个是 主单位 (dp、sp) ,一个是 副单位 (pt、in、mm)

cocos2dx ——屏幕适配

时间秒杀一切 提交于 2020-02-26 02:32:55
本文出自 “ 夏天的风 ” 博客,请务必保留此出处 http://shahdza.blog.51cto.com/2410787/1550089 手机的屏幕大小千差万别,如现在流行的安卓手机屏幕大部分长宽比例为16:9。而iPhone 5S的长宽比例为71:40(接近16:9),也有预测说iPhone 6S的长宽比例也将会是主流的16:9。另外还有一些平板电脑为4:3、16:10、5:4等等。当然还有一些其他的牌子可能屏幕比例也不一样。 要想让你的程序在各种手机上都能很好的呈现游戏画面,就需要进行屏幕适配。 【致谢】 http://gl.paea.cn/contents/10adab2de4f4bf1c.html 【小知识】 分辨率:是指屏幕图像的精密度,即显示器所能显示的像素有多少。 如:分辨率480×320的意思是水平方向含有像素数为480个,垂直方向像素数320个。 屏幕尺寸一样的情况下,分辨率越高,显示效果就越精细和细腻。 同时分辨率也反映了屏幕长宽比例(如15:10)。 【屏幕适配】 1、两个分辨率 1.1、窗口分辨率 在AppDelegate.cpp中有个设置窗口分辨率的函数。该函数是设置了我们预想设备的屏幕大小,也就是应用程序窗口的大小。 [cpp] view plain copy // glView->setFrameSize(480, 320); // 1.2

自适应布局 的 解决方案

喜你入骨 提交于 2020-02-08 03:44:52
曾几何时为了兼容IE低版本浏览器而头痛,以为到Mobile时代可以跟这些麻烦说拜拜。可没想到到了移动时代,为了处理各终端的适配而乱了手脚。对于混迹各社区的偶,时常发现大家拿手机淘宝的H5页面做讨论—— 手淘的H5页面是如何实现多终端的适配 ? 那么趁此 Amfe阿里无线前端团队双11技术连载 之际,用一个实战案例来告诉大家,手淘的H5页面是如何实现多终端适配的,希望这篇文章对大家在Mobile的世界中能过得更轻松。 目标 拿一个双11的Mobile页面来做案例,比如你实现一个类似下图的一个H5页面: 目标很清晰,就是做一个这样的H5页面。 DEMO 请用手机扫下面的二维码 痛点 虽然H5的页面与PC的Web页面相比简单了不少,但让我们头痛的事情是要想尽办法让页面能适配众多不同的终端设备。看看下图你就会知道,这是多么痛苦的一件事情: 点击 这里 查看更多终端设备的参数。 再来看看手淘H5要适配的终端设备数据: 看到这些数据,是否死的心都有了,或者说为此捏了一把汗出来。 手淘团队适配协作模式 早期移动端开发,对于终端设备适配问题只属于Android系列,只不过很多设计师常常忽略Android适配问题,只出一套iOS平台设计稿。但随着iPhone6,iPhone6+的出现,从此终端适配问题不再是Android系列了,也从这个时候让移动端适配全面进入到“杂屏”时代。 上图来自于

Android屏幕适配

这一生的挚爱 提交于 2020-02-07 02:28:10
Android手机屏幕适配一直是老生常谈的问题,像Android产品市场上种类繁多,单单就手机而言,屏幕的尺寸和分辨率就各有不同,还包括搭载Andorid系统的平板、穿戴设备、电视、车机等产品,要想自己做的APP能够自由地运行在各种设备上,适配那是必须的。 1.屏幕尺寸、屏幕分辨率、屏幕像素密度 (1)屏幕尺寸 买手机时最常见,目前Android手机都开始向大屏方向发展,像过往的5.0英寸的手机,都成小屏幕手机了,常见的5.0英寸、5.15英寸、5.5英寸等,都是屏幕尺寸,对于屏幕尺寸的适配,没有太多的要求。 (2)屏幕分辨率 目前市面上最常见的就是1080P,1920*1080, 单位是px,1px = 1像素点 ,这也是1080P的由来,P就是px,横纵的像素个数乘积。 (3)屏幕像素密度 指的是每英寸屏幕上像素点的个数, 单位是dpi ,这个参数在买手机的时候也是会带的,尤其是大屏手机,如果屏幕像素密度比较低,就会有颗粒感,不知你们有没有这样的体验。 2.dp、dip、dpi、sp、px等计量单位之间的关系 (1)dp和dip 这个就非常常见了,我们在写布局的时候,在设置控件宽度或者高度的时候,都会设置为xxdp;以160dpi(屏幕像素密度)为基准,1dip = 1px dp(dip)是密度无关像素,为什么这么说呢? 假设有两个手机屏幕,分别为A:480 320

Android 8.0+ 应用图标适配

拥有回忆 提交于 2020-02-05 11:38:49
1、找到 mipmap-anydpi-v26 文件夹 首先找到res目录下的mipmap-anydpi-v26文件夹,如果该文件夹被你删掉了,则创建一个该名称的文件夹 2、适配 按照下图指示打开 Image Asset 出现下图这个界面后(下图为我自己调好大小后的截图),修改 Path 为你的 logo 图标放置路径,然后拖动下面的 Resize 滚动条,找到合适的图标大小 接下来调 Background Layer,由于我的logo底色是纯绿色的,所以我选择了 Asset Type 为 Color,设置成了图标背景色,完成后点 next,然后点 finish。 你会发现这些文件都被覆盖了,那就说明:适配完成了。 现在再到手机上看看应用图标,真好看!哈哈哈 来源: CSDN 作者: 陈贵贵 链接: https://blog.csdn.net/GracefulGuigui/article/details/104178464

手淘适配-flexible

别来无恙 提交于 2020-02-04 14:04:48
目标 拿一个双11的Mobile页面来做案例,比如你实现一个类似下图的一个H5页面: 目标很清晰,就是做一个这样的H5页面。 痛点 虽然H5的页面与PC的Web页面相比简单了不少,但让我们头痛的事情是要想尽办法让页面能适配众多不同的终端设备。看看下图你就会知道,这是多么痛苦的一件事情: 再来看看手淘H5要适配的终端设备数据: 看到这些数据,是否死的心都有了,或者说为此捏了一把汗出来。 手淘团队适配协作模式 早期移动端开发,对于终端设备适配问题只属于Android系列,只不过很多设计师常常忽略Android适配问题,只出一套iOS平台设计稿。但随着iPhone6,iPhone6+的出现,从此终端适配问题不再是Android系列了,也从这个时候让移动端适配全面进入到“杂屏”时代。 上图来自于 paintcodeapp.com 为了应对这多么的终端设备,设计师和前端开发之间又应该采用什么协作模式?或许大家对此也非常感兴趣。 而整个手淘设计师和前端开发的适配协作基本思路是: 选择一种尺寸作为设计和开发基准 定义一套适配规则,自动适配剩下的两种尺寸(其实不仅这两种,你懂的) 特殊适配效果给出设计效果 还是上一张图吧,因为一图胜过千言万语: 在此也不做更多的阐述。在手淘的设计师和前端开发协作过程中:手淘设计师常选择iPhone6作为基准设计尺寸,交付给前端的设计尺寸是按 750px *