开发微信小程序中,遇到iPhone全面屏手机,底部小黑条会遮挡页面底部,因此需要做适配处理。

解决方案:使用wx.getSystemInfoSync()中的screenHeight和safeArea对象的bottom属性判断

screenHeight是获取屏幕的高度,因为bottom是以屏幕左上角为原点开始计算的,所以需要的是屏幕高度。

safeArea对象的bottom属性是安全区域右下角纵坐标。

screenHeight减去safeArea对象的bottom属性,则是底部小黑条的高度。

获取底部小黑条的高度,全局存储使用。

app.js的onLaunch函数:

wx.getSystemInfo({
  success: res => {
    this.globalData.bottomHeight = res.screenHeight - res.safeArea.bottom;
  },
  fail(err) {
    console.log(err);
  }
})

在所需页面的js文件从全局变量中获取:

onLoad: function (options) {

this.setData({
    bottomHeight : app.globalData.bottomHeight
  })

}

在所需页面的wxml里面使用:

<view class="page" style="padding-bottom:{{bottomHeight }}px"></view>

微信小程序全面屏适配相关推荐

  1. 微信小程序 全面屏适配

    最近在做小程序,说实话小程序的坑我才刚踩.今天做了一个关于小程序自定义navigator的功能,不废话,先上图 通过配置app.json的window属性的navigationStyle(导航栏样式, ...

  2. 微信小程序 全面屏的适配

    通过配置app.json的window属性的navigationStyle(导航栏样式,仅支持以下值: default 默认样式custom 自定义导航栏,只保留右上角胶囊按钮),改为custom模式 ...

  3. angularjs全栈开发知乎_1-4【微信小程序全栈开发课程】原生小程序框架介绍

    1.打开小程序目录 打开微信开发者工具,我们上一节新建的项目,我圈出来的这个地方就是小程序的目录结构(如果你那里没有显示,可以点击左上方的编辑器来显示) 2.原生小程序框架介绍 给大家画了一张图,重要 ...

  4. 为啥我的页面模板的from提交不了数据_4-9【微信小程序全栈开发课程】意见反馈(四)--提交反馈信息

    1.创建后端操作文件 先在后端server/controllers文件夹中创建操作文件createopinion.js,用来将从前端页面提交的数据,插入到opinions表中,创建完之后,页面目录如下 ...

  5. 上拉加载更多后台数据_6-7【微信小程序全栈开发课程】记录页面(七)--分页加载记录数据...

    现在是一次性加载所有的记录数据,数据多的时候,会加载比较慢,所以我们改成分页加载,一次最多加载15条数据 每次拉倒底部都会自动加载下一页的数据,知道所有的数据加载完成 1.添加data变量 编辑rec ...

  6. eslint不报错 vue_2-2【微信小程序全栈开发课程】index页面搭建--ESlint格式错误

    1.修改入口文件 也就是src/pages/index/main.js文件 main.js是入口文件,通过main.js来加载index.vue文件.每个页面文件夹中都要有main.js文件 //加载 ...

  7. 微信小程序全屏背景图

    微信小程序全屏背景图,解决你在设置过程中出现的多次背景图重复出现的问题 wxml <view class="container" style="height: {{ ...

  8. 3.2【微信小程序全栈开发课程】登录功能(一)--实现登录功能

    在本地搭建好后端环境之后,我们来实现登录功能 1.安装SDK插件 SDK插件用来获取用户的openId SDK是server端(也就是后端)的插件,帮助我们很容易的获取openId.openId是微信 ...

  9. 微信小程序全选,微信小程序checkbox,微信小程序购物车

    微信小程序,这里实现微信小程序checkbox,有需要此功能的朋友可以参考下. 摘要: 加减商品数量,汇总价格,全选与全不选 设计思路: 一.从网络上传入以下Json数据格式的数组  1.标题titl ...

最新文章

  1. leetcode112 路径总和
  2. 【华为云技术分享】云小课 | SAP扩容实战
  3. Python 基础知识学习笔记——NumPy
  4. windows系统启用2个以上的mysql服务
  5. Power Designer快速的创建出数据集
  6. P2920 [USACO08NOV]时间管理Time Management
  7. setuna截图软件怎么用_苹果手机笔记怎么做?用哪款笔记软件好
  8. [ CSOL ] - zihao + 自适应 + 文字滚动 + 媒体查询 + fullpage + 手风琴 + 延时动画
  9. 中国城市名列表及code
  10. V4 乱码问题总结 v5 也可以参考
  11. win10设置保护色
  12. 微信pc无法卡开word文件,点击文件提示“目录名无效“
  13. canvas全局合成画月牙_画房子一日营 | 园林设计写生系列课程
  14. iOS模拟器iOS Simulator详细图文使用教程
  15. 浏览器源代码下载图片原图,手把手教学
  16. java语言基础-刘建-专题视频课程
  17. 软件测试过程中的文档内容
  18. Android超简单时间轴的实现
  19. 附彩蛋|Spring Security 竟然故意延长登录时间?知道真相的我惊呆了!
  20. 2019年MongoDB中文社区 上海大会

热门文章

  1. 某工控图片上传服务 CPU 爆高分析
  2. 《视觉SLAM进阶:从零开始手写VIO》(二)
  3. 手游平台开发需要哪些人员构成?
  4. 有道云笔记 协作android版,有道云笔记Android版升级_软件资讯软件快报-中关村在线...
  5. Arduino DIY 电子自动浇花浇水系统
  6. php脚本执行时间设置
  7. 【LeetCode-中等】55. 跳跃游戏(详解)
  8. 眼睛炯炯有神的教官领着我们这些小公主
  9. SocketInputStream.socketRead0 导致线程hangs的解决方案
  10. Jude——用例图和活动图