在小程序开发的时候会遇到一些页面不需要头部导航,或像淘宝的商品详情一样自定义的导航栏。那先要清楚这导航可不能写死,每种手机的导航都各不相同。

一、在app.jsonwindow对象中定义导航的样式:

"window":{
"navigationStyle": "custom"
},

这样你会发现所有页面的导航栏都不见了。如果还有其他页面需要导航栏的,那就模仿小程序的导航栏按照以下步骤。
二、首先要在app.jsonLaunch方法里面获取手机状态栏高度,全局定义导航高度navHeight

// 获取手机系统信息
wx.getSystemInfo({
success: res => {
//导航高度
this.globalData.navHeight = res.statusBarHeight + 46;
}, fail(err) {
console.log(err);
}
})

注意!!!全局定义导航高度navHeight!!!
我发现很多人会遇到navHeightundefined这个问题。在这里说明一下,这个navHeight需要在app.json里面定义好:

globalData: {
userInfo: null,
navHeight: 0
}

三、在需要导航的 页面Page拿到全局变量导航高度:

const App = getApp();
Page({
/**
* 生命周期函数--监听页面加载
*/
onLoad: function (options) {
this.setData({
navH: App.globalData.navHeight
})
},
})

四、页面展示:

<view>
<view class='nav bg-white' style='height:{{navH}}px'>
<view class='nav-title'>
首页
<image src='../../images/back.png' mode='aspectFit' class='back' bindtap='navBack'></image>
</view>
</view>
<scroll-view class='bg-gray overflow' style='height:calc(100vh - {{navH}}px)' scroll-y >
<view class='hidden'>
<!-- 正文 -->
</view>
</scroll-view>
</view>

五、附上样式,可以写在app.wxss

.nav{
width: 100%;
overflow: hidden;
position: relative;
top:;
left:;
z-index:;
}
.nav-title{
width: 100%;
height: 45px;
line-height: 45px;
text-align: center;
position: absolute;
bottom:;
left:;
z-index:;
font-family:PingFang-SC-Medium;
font-size:36rpx;
letter-spacing:2px;
}
.nav .back{
width: 22px;
height: 22px;
position: absolute;
bottom:;
left:;
padding: 10px 15px;
}
.bg-white{
background-color: #ffffff;
}
.bg-gray{
background-color: #f7f7f7;
}
.overflow{
overflow: auto;
}
.hidden{
overflow: hidden;
}

转: https://www.jianshu.com/p/5753a0e1754f

最新文章

  1. Mvc模板页
  2. asp.net+nopi生成Excel遇到设置单元格值null问题
  3. Java中Atomic包的实现原理及应用
  4. 利用UIScrollView实现几个页面的切换
  5. C#操作sql通用类 SQLHelper
  6. 判断JS类型
  7. 官网下载旧版本的Xcode
  8. 关于Cocos2d-x 3.0正式版 粒子问题在IOS上正常显示,在Android下有问题的解决方式
  9. React Native之hellWord
  10. vue-cli 第二章 (常见问题修正)
  11. hadoop-eclipse插件编译及windows下运行wordcount项目
  12. CAS单点登录安装笔记
  13. go语言之进阶篇通过switch实现类型断言
  14. PCL点云分割(1)
  15. SpringBoot自动化配置的注解开关原理
  16. 【转】一个简单的WCF回调实例
  17. 关于 \t 水平制表符 Horizontal Tab (TAB)
  18. Java初学者笔记四:按行读写文件和输入处理
  19. Nginx优化指南
  20. linux下bash脚本语法

热门文章

  1. Python标准库3.4.3-random
  2. OpenStack 2014.1(Icehouse) 更新说明
  3. Tensorflow&CNN:验证集预测与模型评价
  4. Centos 6.x开机启动流程
  5. 工程代码不编译src的java目录下的xml文件问题及解决
  6. Vmware Pro 14报错:无法连接 MKS: 套接字连接尝试次数太多;正在放弃。
  7. Hibernate初探之单表映射——创建Hibernate的配置文件
  8. BZOJ3514 GERALD07加强版
  9. ***PHP preg_match正则表达式的使用 转载:https://www.cnblogs.com/kenshinobiy/p/4443600.html
  10. [bzoj 2393] Cirno的完美算数教室 (容斥原理+dfs剪枝)