uniapp中自定义头部导航栏设置,去掉官方默认导航

最近在uniapp开发中遇到了一个自定义头部导航栏的设置,根据官网简单的写了下自己的方法

uniapp默认的导航栏样式是这样的

20200908180645694.png

但是我要的效果图是这样的

20200908180710439.png

左右两边是图标,中间是标题

解决方法如下

现在page.json文件中对应的路径下将原生导航栏样式去掉

  1. {
  2. "path": "pages/transport-report/index",
  3. "style": {
  4. "navigationBarTitleText": "运输报表",
  5. "app-plus":{
  6. "titleNView":false //去掉app+h5顶部导航
  7. }
  8. }
  9. },

2.在页面结构中添加 状态栏 和 自定义导航栏

  1. <view class="status_bar">
  2. <!-- 这里是状态栏 -->
  3. </view>
  4. <!-- 自定义状态栏 -->
  5. <view class="status_title">
  6. <image class="status_left" src="@/static/images/icon/left@2x.png" mode="widthFix" @click="back"></image>
  7. <view class="status_center">运输报表</view>
  8. <image class="status_right" src="@/static/images/icon/filter.png" mode="widthFix"></image>
  9. </view>

注意:status_bar是手机顶部高度(手机电量,信号那一行 高度),如下

20200908181718411.png

下面内容是自己自定义的,我是左右图标,中间标题,这部分可以自己自定义(搜索框、按钮等等都行)

3.CSS代码如下

  1. /* 自定义状态栏 */
  2. .status_bar {
  3. height: var(--status-bar-height);
  4. width: 100%;
  5. }
  6. /* 自定义导航栏 */
  7. .status_title {
  8. box-sizing: border-box;
  9. display: flex;
  10. justify-content: space-between;
  11. align-items: center;
  12. width: 100%;
  13. height: 44px;
  14. padding: 0 16px;
  15. background-color: #FFFFFF;
  16. }
  17. .status_left {
  18. width: 18px !important;
  19. }
  20. .status_center {
  21. font-size: 17px;
  22. font-weight: 700;
  23. }
  24. .status_right {
  25. width: 22px;
  26. }

4.上面左侧返回按钮我绑定了返回事件,右侧也可以绑定

  1. back() {
  2. uni.switchTab({
  3. url: '/pages/tab-business/index'
  4. });

}
注意:因为我返回的是tab栏,所以必须用 uni.switchTab 跳转 ,如果跳转到别的页面就不需要这个了

因为也是刚学习这个uniapp,所以也有很多不懂的地方,如有错误地方希望大家能多多指教

文章由官网发布,如若转载,请注明出处:https://www.veimoz.com/750
0 评论
1w

发表评论

!