微信小程序自定义顶部导航栏
小程序提供的顶部导航栏字体颜色仅支持 #ffffff 和 #000000两种,因其局限性多数情况需要自定义导航栏
导航栏替换基本流程如下
- 去掉原有小程序自带的导航栏;
- 计算导航栏高度。避免部分页面使用自带导航栏导致高度不一致的情况;
- 确定标题文字位置。
去掉顶部这个不太好看的黑壳壳子;
情况一:个别页面自定义
在当前页面所属的json配置文件中修改如下:
{"usingComponents": {},"navigationStyle": "custom"
}
情况二:全部页面自定义
在全局json配置文件(app.json)中修改windows参数如下(没有windows配置的手动添加):
"window": {"navigationStyle": "custom"
},
此时效果:
获取状态栏高度
注:获取的高度单位是px
wx.getSystemInfo({success: res => {const statusBarHeight = res.statusBarHeight}
})
状态栏高度即为图中骚粉色区域高度;
导航栏高度
骚粉区域的高度再加上xie红色区域的高度就是我们自定义的导航栏高度
所有的机型导航栏高度都是状态栏高度加上44px
const navigationHeight = statusBarHeight + 44 + 'px';
此时我们就找到了导航栏的高度
确定标题位置
标题和右上角的胶囊处于同一水平区域居中显示,如图黄色区域:
首先获取胶囊的位置信息(获取结果单位为px)
const capsuleInfo = wx.getMenuButtonBoundingClientRect();//bottom: 胶囊底部距离屏幕顶部的距离//height: 胶囊高度//left: 胶囊左侧距离屏幕左侧的距离//right: 胶囊右侧距离屏幕左侧的距离//top: 胶囊顶部距离屏幕顶部的距离//width: 胶囊宽度
我们只需要拿到胶囊的height值和top值即可完成标题文字定位
<view class="title" style="height:{{height}}px;top:{{top}}px;">标题</view>
结束
至此导航栏的替换已经完成,其它个性化样式根据自身需要调整即可。
微信小程序自定义顶部导航栏相关推荐
- 微信小程序 自定义顶部导航栏标题 navigationStyle
微信小程序 自定义顶部导航栏标题 单页面自定义导航栏 修改需要自定义的页面,的页面配置.json文件 全部页面自定义导航 修改公共页面配置app.json 单页面自定义导航栏 修改需要自定义的页面,的 ...
- 原声微信小程序自定义顶部导航栏 . 自定义navigationBar。 (单页面设置)
本文实例为大家分享了微信小程序自定义导航栏的具体代码,供大家参考,具体内容如下 实现自定义大致需要以下?步骤: 1.在页面.JSON文件进行相关配置,以便去掉原生 "navigationSt ...
- uniapp开发微信小程序自定义顶部导航栏
自定义导航栏渐变色,先上效果 使用uniapp开发小程序,在不同界面,要去对页面进行修改顶部导航栏. 比如说要去定义导航栏的背景颜色,常规的去定义导航栏背景颜色 全局定义导航栏 "windo ...
- 微信小程序自定义顶部导航栏navigationBar
自定义navigationBar怎么做? 去掉原生导航栏. 将需要自定义navigationBar页面的page.json的navigationBarTitleText去掉. 加上"navi ...
- 微信小程序之顶部导航栏(选项卡)实例 —— 微信小程序实战系列(1)
需求:顶部导航栏 效果图: wxml: <!--导航条--> <view class="navbar"><text wx:for="{{na ...
- 微信小程序制作顶部导航栏
1问题描述 使用微信小程序开发者工具制作顶部导航栏. 2算法描述 首先就是对微信小程序开发者工具的配置,官网搜索后进入,选择稳定版,Windows64位下载. 然后点开开发者工具,选择小程序,点击图片 ...
- (转载)微信小程序自定义头部导航栏
本文转载自微信小程序自定义头部导航栏 微信小程序自定义头部导航栏 先看下demo的效果: 最终要实现的效果: 在tabbar页面不显示左侧按钮: 分享出去的页面进入后不显示左侧返回按钮: 点击返回按钮 ...
- 微信小程序实现顶部导航栏渐变
在小程序开发的过程中,会遇到一些页面上的要求,要求实现顶部导航栏的渐变如何实现,因为小程序做了一些封装,下面看看页面的布局图: 如图所示,实际上我们能够操作的页面只有中间那一块,那么,如果客户需要使用 ...
- 微信小程序自定义搜索导航栏
自定义微信小程序导航栏 因为项目需要,要实现如京东小程序类似的搜索导航栏-下图所示搜索框在导航栏中.参考了官方API最终实现了该有的效果,顺便吧此次实现的思路和代码记录下来. 一.拆解分析 按照正常的 ...
- 微信小程序自定义tabbar导航栏,中间凸出样式
这种样式的底部导航栏 使用微信小程序的自定义tabBar:微信小程序官方说明 uni.app=>在 page.json 中的 tabBar 项指定 custom 字段为true: "t ...
最新文章
- Python去除字符串前后空格
- SqlServer中怎样从Excel中导入数据
- 【资源】mp3的外链资源
- 【图像超分辨率论文】BasicVSR++: Improving Video Super-Resolution with Enhanced Propagation and Alignment
- Zookeeper:fsync超时导致实例异常
- nacos怎么修改服务分组_nacos服务注册如何配置分组?
- RabbitMQ(五) 订阅发布者模式介绍以及代码实现
- 微型计算机主板上安装的主要部件有,微型计算机的主板上安装的主要部件有()....
- 【rqnoj】 1 明明的随机数
- python中unique()与nuniqe()用法
- hping3发送MTU大包无法正确设置DF标志patch
- Android 4.2蓝牙介绍
- 如何在网上隐藏自己的IP地址
- 圆的半径java_计算圆的半径
- 三维管型ybc预览以及动态成型仿真控件
- Android夜间模式原理
- ERROR: Could not build wheels for cryptography which use PEP 517 and cannot be installed directly
- GPS经纬度坐标转换的方法
- 浏览器User-Agent大全
- 自学的程序员一点竞争力都没有么?
热门文章
- 高等数学笔记:定积分换元谬误
- safari查看html代码,iPhone不越狱safari查看网页源代码方法
- 视频教程-计算机二级(VB)-计算机等级考试
- 云服务器搭建网站域名要备案吗,域名绑定服务器需要备案吗
- c语言课程设计黄金矿工,unity简易版黄金矿工源码
- 和金融男谈恋爱 vs 和程序员谈恋爱
- C\C++ 大作业 直接运行—员工信息管理系统(STL/类与对象/继承/多态/文件操作)
- 秋招知识点总结-Redis数据库
- Error: Failed to launch the browser process!
- 计算机考研和软件的区别吗,考研考计算机与考软件有什么区别