uni-app移动端开发中ios/安卓--坑和经验总结

摘要:
经过研究,devicePixelRatio是罪魁祸首。因为手机的分辨率太小,如果按照分辨率显示页面,文字就会很小。因此,苹果最初在页面上显示的iPhone 4的960640分辨率仅为480320,因此devicePixelRatio=2。目前,Android系统一团糟,有1.5、2和3。例如,如果div的宽度和高度为100100,则背景图像必须为200200,然后背景大小:contain;,这样,显示的图片更清晰。代码如下:background:urlno repeat center-webkit background size:50px50px;背景尺寸:50px50px;显示:内联块;100%; 高度:50px;或指定背景大小:包含;好了,大家都试试!如果不想使用缓存,可以不设置缓存。

1、 ios new时间对象,需要用逗号隔开传日期的方式, 不支持 new Date('2019-03-01 08:00:00') 格式;

支持以下两种方式:

uni-app移动端开发中ios/安卓--坑和经验总结第1张

uni-app移动端开发中ios/安卓--坑和经验总结第2张

2、 ios个别版本对fixed的属性的支持性不好,需要用absolute替代;

3、 input 的 placeholder会出现文本位置偏上的时候
            input 的placeholder会出现文本位置偏上的情况:PC端设置line-height等于height能够对齐,而移动端仍然是偏上,解决是设置line-height:normal
4、在开发微信号时候 Android和ios下点击返回键  会直关闭页面 对用户交互效果很不好,所以要用js控制下返回键 返回到自己要去的页面:
复制代码
window.addEventListener("popstate", function(e) {
     location.replace(location.href);
 }, false);
 function pushHistory() {
     var state = {
         title: "title",
         url: "#"
     };
     window.history.pushState(state, "title", "#");
 }
 pushHistory();
复制代码

 5、安卓浏览器看背景图片,有些设备会模糊。 
用同等比例的图片在PC机上很清楚,但是手机上很模糊,原因是什么呢? 
经过研究,是devicePixelRatio作怪,因为手机分辨率太小,如果按照分辨率来显示网页,这样字会非常小,所以苹果当初就把iPhone 4的960640分辨率,在网页里只显示了480320,这样devicePixelRatio=2。现在android比较乱,有1.5的,有2的也有3的。让图片在手机里显示更为清晰,必须使用2x的背景图来代替img标签(一般情况都是用2倍)。例如一个div的宽高是100100,背景图必须得200200,然后background-size:contain;,这样显示出来的图片就比较清晰了。 
代码如下: 

background:url(../images/icon/all.png) no-repeat center center; 
-webkit-background-size:50px 50px; 
background-size: 50px 50px;display:inline-block; 100%; height:50px; 

或者指定 background-size:contain;都可以,大家试试!

6、禁止复制、选中文本

复制代码
Element {
-webkit-user-select: none;
-moz-user-select: none;
-khtml-user-select: none;
  user-select: none;
}
复制代码

7、设置缓存 
<meta http-equiv="Cache-Control" content="no-cache" /> 
手机页面通常在第一次加载后会进行缓存,然后每次刷新会使用缓存而不是去重新向服务器发送请求。如果不希望使用缓存可以设置no-cache。 

8、长时间按住页面出现闪退 
element { 
-webkit-touch-callout: none; 

9、移动端禁止图片长按和点击img标签放大图片。

img{ pointer-events: none; }

免责声明:文章转载自《uni-app移动端开发中ios/安卓--坑和经验总结》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇node:json与csv互转iOS常用宏定义下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Windows上实现iOS APP自动化测试:tidevice + WDA + facebook-wda / appium

本文介绍如何在Windows下构建iOS APP自动化测试环境,采用的主要工具为tidevice,WebDriverAgent,facebook-wda或者appium。 目录 测试架构介绍 WebDriverAgent原理分析 tidevice原理分析 iOS 设备安装 wda 1、安装Xcode 2、下载WebDriverAgent 3、...

人脸识别1:1对比 (二)

本项目采用Face++第三方接口,项目实现了两张图片的人脸识别和对比,得到相似度等信息 项目步骤如下: 一、所需权限 <uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permissio...

iOS开发系列--触摸事件、手势识别、摇晃事件、耳机线控

概览 iPhone的成功很大一部分得益于它多点触摸的强大功能,乔布斯让人们认识到手机其实是可以不用按键和手写笔直接操作的,这不愧为一项伟大的设计。今天我们就针对iOS的触摸事件(手势操作)、运动事件、远程控制事件等展开学习: iOS事件简介 触摸事件 手势识别 运动事件 远程控制事件 iOS事件 在iOS中事件分为三类: 触摸事件:通过触摸、手势进...

Google Flutter框架:使用VS Code进行开发

虽然进行安卓开发使用Android studio 比较方便 ,但是因为AS太臃肿而且还有一些404问题,就在打算如何进行高效的Android开发,于是找到了Flutter SDK, 他支持使用IDE进行开发, 也就是可以直接脱离AS以及java代码(真的很头大)!Flutter 是 Google 为您打造的 UI 工具包,帮助您通过一套代码同时在 iOS...

word之常用功能

0、word区域:标题栏、快速访问工具栏、功能区、功能按钮、导航窗口、编辑区、水平垂直滑动条、状态栏 1、更改office主题。文件---帐户---office主题。(传统白色、浅灰色、深灰色) 2、高版本word文档另存为低版本文档。文件---另存为---选择文件存放路径--选择文件保存类型(word 97-2003),兼容性检查器选项选择继续即可。...

转:android中APK开机自动运行

背景知识:当Android启动时,会发出一个系统广播,内容为ACTION_BOOT_COMPLETED,它的字符串常量表示为android.intent.action.BOOT_COMPLETED。只要在程序中“捕捉”到这个消息,再启动之即可。记住,Android框架说:Don't call me, I'll call you back。我们要做的是做好接...