适配

移动web开发,从网易与淘宝的font-size思考前端设计稿与工作流

六月ゝ 毕业季﹏ 提交于 2019-12-09 16:37:14
本文结合自己对网易与淘宝移动端首页html元素上的font-size这个属性的思考与学习,讨论html5设计稿尺寸以及前端与设计之间协作流程的问题,内容较多,但对你的技术和工作一定有价值,欢迎阅读和点评:)。 1. 问题的引出 最近阅读白树的博文《 移动web资源整理 》时,他在博文中有一段指出,如果html5要适应各种分辨率的移动设备,应该使用rem这样的尺寸单位,同时给出了一段针对各个分辨率范围在html上设置font-size的代码: - Hide code html{font-size:10px} @media screen and (min-width:321px) and (max-width:375px){html{font-size:11px}} @media screen and (min-width:376px) and (max-width:414px){html{font-size:12px}} @media screen and (min-width:415px) and (max-width:639px){html{font-size:15px}} @media screen and (min-width:640px) and (max-width:719px){html{font-size:20px}} @media screen and (min

XIB文件上UIScrollView的约束

感情迁移 提交于 2019-12-06 13:47:26
昨天开始做公司项目APP的多屏幕适配,之前都是按照iPhone5的大小强行拉伸的.很不美观. 适配过程中发现好多页面用的都是滚动视图,加约束过程中出现了问题.经过搜索才发现UIScrollView因为ContentSize的原因,并不能很方便的给其上的控件添加约束.经过查阅资料和实践,选择了一个方便的处理方法: 给UIScrollView添加一个唯一的view,控件全部放在view上. 开始添加约束: UIScrollView上下左右都是0; 给其上的view也是上下左右都是0; 如果滚动视图是上下滑动,给view添加 Horizontal Center in Container约束; 给view添加高度(height)约束,该数值就是 UIScrollView 的contentSize; 至此约束已经没有红线.将控件放在view上正常添加约束且仍可滚动. view的高度约束height也可以拖拽出来设置成属性, 重写 -(void)updateViewConstraints 方法并调用该方法的super.就可以动态的设置height这个约束的constant属性。 (给self.height.constant动态赋值即可实现动态修改其滚动高度) 来源: oschina 链接: https://my.oschina.net/u/2526171/blog/646361

使用rem实现移动端适配的简单方法

会有一股神秘感。 提交于 2019-12-04 03:19:47
使用rem适配已经快一年了,感觉还是不错的,在这里记录一下。 ##1.原理 rem 是一个相对单位,相对的是根元素‘html’的字号。比如html的font-size:100px;那么1rem=100px;html的font-size:120px;那么1rem=120px;所以我们可以根据手机不同的尺寸,设置不同的根元素字体,来适应不同的屏幕。而且它兼容性好,从安卓2.1就支持rem。 举个栗子: //在iPhone5下 html{ font-size:100px; } //在iPhone6下 html{ font-size:116px; } .box{ width:1rem;//在iPhone5下,width为100px;在iPhone6下,width为116px,从而实现了大小屏的适配 } ##2.设置基准 我们依据什么来设置根目录的字号呢?两种方案 ###2.1css媒体查询宽度设置断点 为什么是宽度?因为垂直方向的可以出滚动条,而水平方向出现滚动条就有点怪怪的了。 @charset "utf-8"; //iphone5 @media screen and (max-width: 374px){ html{ font-size: 85px; } } //iphone6 @media screen and (min-width: 375px)and(max-width:

【腾讯优测干货分享】Android 相机预览方向及其适配探索

北战南征 提交于 2019-12-01 03:47:11
本文来自于 腾讯bugly开发者社区 ,未经作者同意,请勿转载,原文地址: http://dev.qq.com/topic/583ba1df25d735cd2797004d 由于Android系统的开放策略,Android手机呈现碎片化的趋势,兼容性问题一直是Android App 开发者头疼的难题。本文以Android相机预览方向为例,探索在Android机型适配上的一些思路。 1. android相机简介 由于Android系统的开放策略,Android手机呈现碎片化的趋势,兼容性问题一直是Android App 开发者头疼的难题。本文以Android相机预览方向为例,探索在Android机型适配上的一些思路。 1.1 相机架构 先了解下Camera的框架,它是分层的结构。由上向下分别是 1)应用层 2)Camera系统的Java类 3)Camera的JNI代码 4)Camera的本地框架 5)Camera服务部分 6)Camera HAL(Hardware Abstraction Layer)硬件抽象层 图一Camera architecture 其中Camera HAL主要的接口文件为CameraHardwareInterface.h ,需要各个系统根据自己的情况实现。由于设备底层硬件的千变万化,android框架不可能提供统一的硬件驱动以及接口实现,只能提供标准的接口

整理iOS9适配中出现的坑(图文)

心不动则不痛 提交于 2019-11-29 16:50:36
本文主要是说一些iOS9适配中出现的坑,如果只是要单纯的了解iOS9新特性可以看瞄神的 开发者所需要知道的 iOS 9 SDK 新特性 。9月17日凌晨,苹果给用户推送了iOS9正式版,随着有用户陆续升级iOS9,也就逐渐的衍生出了一系列的问题,笔者也在赶忙为自己维护的App做适配,本文写的一些坑基本都是亲身体验了。 一、NSAppTransportSecurity iOS9让所有的HTTP默认使用了HTTPS,原来的HTTP协议传输都改成TLS1.2协议进行传输。直接造成的情况就是App发请求的时候弹出网络无法连接。解决办法就是在项目的info.plist 文件里加上如下节点: NSAppTransportSecurity - NSAllowsArbitraryLoads 这个子节点的意思是:是否允许任性的加载?! 设为YES的话就将禁用了AppTransportSecurity转而使用用户自定义的设置,这个问题就解决了。 如果你不是在董铂然博客园看到本文,请 点击查看原文 。 上面说是苹果限制了HTTP协议,但是也并不是说所有的HTTPS都能完美适配iOS9了。 举个栗子,从app内起webView加载https的网页。新建个项目写几行起网页的代码 1 2 3 4 5 6 7 8 9 10 11 12 - (void)loadView{ UIWebView *web = [

iOS5、6、7状态栏适配方法

安稳与你 提交于 2019-11-28 23:25:24
由于IOS7的发布,所以应用的适配潮可谓是都搞的锣鼓喧天,甚是热闹,因此呢,因适配IOS7而产生的问题也是铺天盖地的卷来,所以了,我也从简单的状态栏适配开始,先研究了下关于状态栏的适配,特总结如下,供广大网友一起讨论交流。 PS:首先说明下, ios7中,由于status bar不再占用单独的20px,如果app需要同时支持ios7和ios6.1以下,那就需要适配下了,适配开始: 先看用xcode新建项目后 IOS7和IOS6上的的运行效果: ps:一个empty application 里面+了一个rootcontroller,作为window的根控制器,view里面放了一个tableview; 是不是遇到的IOS7的新问题,状态栏跟tableview重叠了,OK,看见这个不想看到的结果,下面我们就开始正式的解决掉这个招人不喜欢的效果。 为了达到ios7与ios6.1以下的UI统一,苹果官方给出的建议是: 苹果官方适配建议 第一步: 不要勾选xib中的Use Autolayout,如下图: 第二步: 第二步:选择View as “ios6.1 and Earlier”,还是上图位置处; 第三步:在Size Inspector中,有一ios6/7 Deltas:分别表示在PosX的增量、PosY的增量、宽度增量、高度增量。 ps:在“ios6.1 and Earlier”模式下