原声微信小程序自定义顶部导航栏 . 自定义navigationBar。 (单页面设置)

这篇具有很好参考价值的文章主要介绍了原声微信小程序自定义顶部导航栏 . 自定义navigationBar。 (单页面设置)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

本文实例为大家分享了微信小程序自定义导航栏的具体代码,供大家参考,具体内容如下


实现自定义大致需要以下?步骤:

1.在页面.JSON文件进行相关配置,以便去掉原生

"navigationStyle":"custom"

备注: navigationStyle(导航栏样式),参数: default = 默认样式,custom = 自定义样式。 

2.在页面.js文件onLoad生命周期函数中分别调用微信的getSystemInfoAsync() 与 getMenuButtonBoundingClientRect()方法

 // 1.获取胶囊按钮的布局位置信息
    const menuButtonInfo = wx.getMenuButtonBoundingClientRect();
 // 2.获取设备系统信息
    const systemInfo = wx. getSystemInfoAsync();

备注:  wx.getSystemInfoAsync用于获取设备信息, wx.getMenuButtonBoundingClientRect用于获取获取胶囊按钮的布局位置信息

3.根据上一步调返回数据再按照官方文档调用相关参数

let a = systemInfo.statusBarHeight + 44;// 导航栏高度
let b = systemInfo.screenWidth - menuButtonInfo.right;// 胶囊距右方间距(方保持左、右间距一致)
let c = menuButtonInfo.top - systemInfo.statusBarHeight;// 胶囊距底部间距(保持底部间距一致)
let d = menuButtonInfo.height;// 胶囊高度(自定义内容可与胶囊高度保证一致)

4.最后在页面使用即可 看样式

原声微信小程序自定义顶部导航栏 . 自定义navigationBar。 (单页面设置)


5.完整代码: ()

index.json 文件 :

{
  "usingComponents": {},
  "navigationStyle":"custom"
 
}

index.js 文件定义 :

 data: {
    navBarHeight: 0, //导航栏高度
    titleBottom: 0, //顶部距离
    title:'自定义顶部'
    // -----
  },

  /**
   * 事件处理
   */
  getHeights() {
    let that = this
    // 1.获取胶囊按钮的布局位置信息
    const menuButtonInfo = wx.getMenuButtonBoundingClientRect();
    // 2.获取设备信息
    const systemInfo = wx.getSystemInfoSync();
    // 3.计算:计算公式:导航栏高度 = 状态栏高度 + 44。
    // 导航栏高度 = 状态栏高度 + 44
    this.setData({
      navBarHeight: systemInfo.statusBarHeight + 44,
      titleBottom: systemInfo.statusBarHeight
    })
    console.log(systemInfo.statusBarHeight)
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    this.getHeights()
  },

index.wxml 文件顶部使用 :


<!-- 顶部 -->
<view class="contentsPages" style="height:{{navBarHeight}}px; padding: {{titleBottom+45}}rpx 0rpx 0rpx 20rpx;">
  <view class="title">
    {{title}}
  </view>
</view>
<!-- 主体 -->
<view class="content" style="height: calc(100% - {{navBarHeight}}px);">
  内容
</view>

index.wxss文件优化页面样式 : 

page {
  box-sizing: border-box;
  width: 100vw;
  height: 100vh;
} 

.contentsPages {
  box-sizing: border-box;
  background-color:#f7f7f7;
}

.title{
  font-size: 30rpx;
}

.content{
  width: 100vw;
  box-sizing: border-box;
  background-color: #ffffff;
}

谢谢!文章来源地址https://www.toymoban.com/news/detail-484250.html

到了这里,关于原声微信小程序自定义顶部导航栏 . 自定义navigationBar。 (单页面设置)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • uni-app微信小程序,APP都适用自定义顶部导航

    *使用自定义的导航样式,首先需要把原生的顶部的导航方式给隐藏掉(\\\"navigationStyle\\\": \\\"custom\\\") *手机顶部手机状态栏的高度 *微信小程序中胶囊的位置信息存储(使用store存储) *由于微信小程序中带有导航胶囊,所以需要根据胶囊去获取一定的参数信息 在微信小程序中,我们只需要获

    2024年02月06日
    浏览(35)
  • 微信小程序第一节 —— 自定义顶部、底部导航栏以及获取胶囊体位置信息。

    dai ga hou啊!我是 😘😘😘 是江迪呀 。我们在进行微信小程序开发时,常常需要自定义一些东西,比如 自定义顶部导航 、 自定义底部导航 等等。那么知道这些自定义内容的具体位置、以及如何适配不同的机型就变得尤为重要。下面让我以在iPhone机型,来给大家介绍下 微信

    2024年02月02日
    浏览(39)
  • 【微信小程序-原生开发】实用教程07 - Grid 宫格导航,详情页,侧边导航(含自定义页面顶部导航文字)

    【微信小程序-原生开发】实用教程 轮播图、分类页签 tab 、成员列表(含Tdesign升级,切换调试基础库,设置全局样式,配置组件按需注入,添加图片素材,wx:for,生命周期 onLoad)

    2024年02月09日
    浏览(70)
  • 微信小程序自定义顶部导航栏的胶囊和微信自带的胶囊一样的透明背景色

    想要实现微信自带的右上角胶囊背景透明很简单,只需要在pages.js里面设置下面配置就可以了: 但是设置完这个后,胶囊的背景色是那种黑色半透明的效果:(微信开发者工具和真机上显示的效果不一致,要以真机为准) 手机端的效果:所以还是要以手机端为准   左侧的返

    2024年02月01日
    浏览(29)
  • 小程序页面顶部标题栏、导航栏navigationBar如何隐藏、变透明?

    \\\"navigationStyle\\\": \\\"custom\\\" 小程序顶部的白色背景条就不见了,直接变透明,只剩下右上角的胶囊按钮  如果页面有 web-view src=\\\"{{src}}\\\" / 这个元素,顶部标题栏背景色依旧会出现哟~~ 扩展阅读 uniapp开发小程序H5页面顶部导航栏navigationBar如何隐藏?三种解决办法_uniapp顶部状态栏_你

    2024年02月13日
    浏览(31)
  • uniapp开发小程序H5页面顶部导航栏navigationBar如何隐藏?三种解决办法

    方法1:在pages.json 原生小程序也可以采用类似的方法去掉顶部,让头部变透明 小程序页面顶部导航栏navigationBar如何隐藏、变透明?_你挚爱的强哥的博客-CSDN博客 小程序顶部的白色背景条就不见了,直接变透明,只剩下右上角的胶囊按钮。 https://s-z-q.blog.csdn.net/article/details/13

    2024年02月13日
    浏览(36)
  • 微信原生小程序自定义顶部导航

    都2023了,自定义顶部导航应该不是什么新鲜事了,这里只是简单记录下 微信自己也提供了自定义顶部导航 navigation-bar ,大概看了下,可配置的也不少,所以看需求了,如果简单可以采用微信提供的,老规矩,先看效果 状态栏高度(getSystemInfoSync),就是手机顶部网络那块的

    2024年02月15日
    浏览(28)
  • 微信小程序自动获取顶部导航栏高度

    1、本人是通过uniapp开发的微信小程序,原生开发基本相同,首先在data里声明变量 2、其次在onLoad生命周期中获取当前手机的导航栏宽高数据 3、navHeight获取的是当前手机型号的导航栏总高度;searchMarginTop获取的是手机顶部到小程序胶囊的高度,也就是下图黄色线框的高度;

    2024年02月11日
    浏览(56)
  • 【微信小程序】头部导航栏背景铺满顶部

    背景:使用uniapp开发微信小程序 需求:需要微信小程序顶部导航栏使用页面背景铺满顶部 我们可以利用 navigationStyle 属性,来处理导航栏样式,支持 default/custom,其中 custom 可自定义导航栏,只保留右上角胶囊状的按钮。 在pages.json 文件里,将globalStyle中新增或修改 navigatio

    2024年02月16日
    浏览(34)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包