android适配

android多分辨率多屏幕密度下UI适配方案

人走茶凉 提交于 2019-11-30 08:36:56
前言 Android 设计之初就考虑到了 UI 在多平台的适配,它本身提供了一套完善的适配机制,随着版本的发展适配也越来越精确, UI 适配主要受平台两个因素的影响:屏幕尺寸(屏幕的像素宽度及像素高度)和屏幕密度,针对不同的应用场景采用的适配方案也不一样,此文档仅针对 Android4.0 及以下版本 相关概念 分辨率: 整个屏幕的像素数目,为了表示方便一般用屏幕的像素宽度(水平像素数目)乘以像素高度表示,形如 1280x720 ,反之分辨率为 1280x720 的屏幕,像素宽度不一定为 1280 屏幕密度: 表示单位面积内的像素个数,通常用 dpi 为单位,即每英寸多少个像素点 px : 长度单位,以具体像素为单位 dp : 长度单位,与具体屏幕密度无关,显示的时候根据具体平台屏幕密度的不同最终转换为相应的像素长度,具体转换规则是 : 1dp = (目标屏幕密度 / 标准密度) *px, 标准密度为 160dpi ,例如, 1dp 长度在密度为 160dpi 的平台表示一个像素的长度,而在 240dpi 的平台则表示 1.5 个像素的长度 屏幕尺寸: 屏幕的大小,通常用屏幕对角线的长度表示 Android 界面适配机制 UI 界面在不同平台的适配受屏幕尺寸和屏幕密度影响, Android 适配机制就是在资源后面添加对这两种因素的限定,通过不同的限定区分不同的平台资源,

0-2岁的app开发人员必读,Android开发APP前的准备事项

早过忘川 提交于 2019-11-30 00:06:55
随着移动互联网的兴起,各行各业对移动应用的需求越来越大,从事APP开发的人也越来越多,APP开发行业可以说是方兴未艾。APP开发是比较复杂的事情,涉及产品、美工设计、服务器端开发、Android/iOS开发、软件测试和项目管理等各方面。这些方面都是相互关联的,如果要做好一个APP,需要对上述各方面都有所了解。 在实际工作中,许多从别的行业转行从事APP开发或从事APP开发一两年的人员,对APP开发的基础知识不甚了解,需要关注的地方都没有考虑到,导致在开发APP的过程中犯了许多低级错误,而这些本来是可以避免的;而在APP开发行业中,从事APP开发一两年的人员又是占了绝大多数。在许多创业型的小公司里,也没有专职的产品、美工和测试人员,往往要求Android/iOS开发人员做到一专多能、身兼数职。 目前介绍APP开发的书籍很多,大都局限于某一方面,内容不够全面,并且许多书籍偏于理论,与实际联系不紧密。国内外市面上大多数的Android开发类图书,基本上可以分为两类: 一类是从系统内核和源代码入手,书的内容重在分析Android各个模块的运行机制,深入理解系统肯定对应用开发者有好处,但很多时候并不是那么实用; 另一类是标准教程,基本内容与Android官方文档类似,围绕API的用法就事论事地讲解,这类书在写法、教学思路和实例上虽然各有千秋,但在实际工作中就会发现还远远不够。 有感于此

从0到1优雅实现沉浸式状态栏

好久不见. 提交于 2019-11-29 20:55:59
目录 1. 概述 2. 实现方案 2.1 前期工作 2.1.1 修改应用主题 2.1.2 获取状态栏高度 2.2 Android 5.0+ 2.2.1 设置状态栏颜色 2.2.2 设置状态栏文字颜色 2.2.3 设置状态栏透明 2.3 Android 4.4+ 2.3.1 设置状态栏颜色 2.3.2 设置状态栏透明 3. 特殊场景 3.1 启动页 3.2 弹窗 参考 1. 概述 现在市面上绝大多数APP都实现了沉浸式状态栏的效果,该效果可以极大地提升用户的使用体验。但是,APP默认的情况下只是设定一个固定的状态栏颜色,那么就需要我们通过代码去动态修改状态栏颜色的。那么,如何去实现呢? 首先来说,从Android 4.4开始才能实现沉浸式状态栏的,所以如果您的APP也支持Android 4.4以下版本,那还需要对Android 4.4以下版本做“不支持沉浸式状态栏”处理。 那么,从Android 4.4开始,大概可以分成三个阶段来实现沉浸式状态栏: Android4.4(API 19) - Android 5.0(API 21):这个阶段的实现方式为:通过FLAG_TRANSLUCENT_STATUS设置状态栏为透明并且为全屏模式,然后通过添加一个与StatusBar一样大小的View,将View的背景设置为要设置的颜色,从而实现沉浸式。 Android 5.0(API 21) -

APP适配IOS8,iPhone6和Plus截图简要说明

核能气质少年 提交于 2019-11-28 23:29:17
有幸在9月25日拿到了iP6和iP6 Plus的真机,恰好又要做适配APP的工作(从iphone5上适配到iphone6和ip6 plus上),所以在真机上研究了下苹果官方在不同分辨率下对系统APP所做的适配。同时在网上也没找到相关的真机对比截图说明什么的,又有朋友问我要IP6和PLUS的真机截图回去自己研究,既然这样,那么干嘛不利用自己已有的资源,让更多的设计师受益呢?所以那就说点什么吧,抛砖引玉,希望大家可以共同研究,少走些弯路,共同成长。 之前看过@jingdesign 的关于适配ip6的文章: 快速适配iPhone6及plus的诀窍 。 还有@罗磊的文章: Web开发者和设计师必须要知道的 iOS 8 十个变化 。作为参考(有摘抄部份)。 ------------------------------------------------------------------ 正文: 首先我们先看一下iphone5,iphone6和iphone6 plus的一些数据对比: 机型 iPhone 5 /s iPhone 6 iPhone 6 Plus 尺寸 4” 4.7” 5.5” Viewport’s device-width (in CSS pixels) 320 375 414 Viewport’s device-width (Android设备同分辨率参考) 360 360

再聊移动端页面的适配

岁酱吖の 提交于 2019-11-28 10:56:06
再聊移动端页面的适配 前端圈真乱,这话一点不假。但乱也乱的好处,乱则生变,有变化才有进步。今天还是老调重谈,聊聊移动端页面的适配。因为对于一枚前端而言,天天和页面打交道(H5页面),那么布局的活总是少不了,这也将面临不同终端的适配问题。不知道你是否和我一样,页面布局总是或多或少会有一些蛋疼的事情发生。如果是的话,建议你花点时间阅读完下面我扯蛋的东东。 Flexible承载的使命 Flexible到今天也有几年的历史了,解救了很多同学针对于H5页面布局的适配问题。而这套方案也相对而言是一个较为成熟的方案。简单的回忆一下,当初为了能让页面更好的适配各种不同的终端,通过Hack手段来根据设备的 dpr 值相应改变 <meta> 标签中 viewport 的值: 从而让页面达么缩放的效果,也变相的实现页面的适配功能。而其主要的思想有三点: 根据 dpr 的值来修改 viewport 实现 1px 的线 根据 dpr 的值来修改 html 的 font-size ,从而使用 rem 实现等比缩放 使用Hack手段用 rem 模拟 vw 特性 有关于Flexible方案实现适配,在2015年双十一之后做过这方面的技术文档分享,感兴趣的同学可以移步阅读《使用Flexible实现手淘H5页面的终端适配》一文。虽然Flexible解决了适配终端很多问题,但它并不是万能的,也不是最优秀的

iPhone 6 / 6 Plus 设计·适配方案

≯℡__Kan透↙ 提交于 2019-11-27 16:32:49
iPhone 6 / 6 Plus 设计·适配方案 关于iPhone6/6+适配问题一直有争议,今天小编专门为大家整理了相关的有效方案,希望对大伙儿有帮助! 移动app开发中多种设备尺寸适配问题,过去只属于Android阵营的头疼事儿,只是很多设计师选择性地忽视android适配问题,只出一套iOS平台设计稿。随着苹果发布两种新尺寸的大屏iPhone 6,iOS平台尺寸适配问题终于还是来了,移动设计全面进入“杂屏”时代。看看下面三款iPhone尺寸和分辨率数据就知道屏幕有多杂了。 加上Android生态中纷繁复杂的各种奇葩尺寸,现在APP设计开发必须考虑适配大、中、小三种屏幕。所以如何做到交付一套设计稿解决适配大中小三屏的问题?设计和开发之间采用什么协作模式?一个基本思路是: 1、选择一种尺寸作为设计和开发基准; 2、定义一套适配规则,自动适配剩下两种尺寸; 3、特殊适配效果给出设计效果。 手机淘宝的iPhone 6/iPhone 6 Plus适配版本即将提交App store审核。先晒一下我们采用的协作模式,再慢慢说明原委。 第一步,视觉设计阶段,设计师按宽度750px(iPhone 6)做设计稿,除图片外所有设计元素用矢量路径来做。设计定稿后在750px的设计稿上做标注,输出标注图。同时等比放大1.5倍生成宽度1125px的设计稿,在1125px的稿子里切图。 第二步