uni-app动态修改顶部导航栏标题
动态修改顶部导航栏标题有两种方法
方式一、使用自定义到导航栏,覆盖原生导航栏
缺点:
自定义到导航栏性能远远不如原生导航栏,手机顶部状态栏区域会被页面内容覆盖,这是因为窗体是沉浸式的原因,即全屏可写
内容;如果存在下拉刷新,下拉刷新会从导航栏上面开始下拉加载,解决方案可采用offset偏移量,自定义下拉圈出现的位置
优点:可根据实际业务场景,开发符合自己UI的样式
1、会覆盖手机屏幕状态栏,解决方法:
1.1、要把状态栏的位置从前景部分让出来,可写一个占位符div
<view class="status_bar">
<!-- 这里是状态栏 -->
</view>
<style>
.status_bar {
height: var(--status-bar-height);
width: 100%;
}
</style>
2、需要配置pages.json里面的pages下style下navigationStyle:false
2.2、在指定页面用自定义到导航栏
2.3、代码如下:
<view class="status_bar">
<!-- 这里是状态栏 -->
</view>
<view class="header">
<view @click="backButton" class="back-image-box">
<image class="back-image" src="/static/img/back.png" mode=""></image>
</view>
<view class="title">{{info.title}}</view>
<view class="share-image-box">
<image @click="FenXiang()" class="share-image" src="/static/img/share.png" mode=""></image>
</view>
</view>
<style scoped lang="scss">
.header{
position: fixed;
top: var(--status-bar-height);
left: 0;
z-index: 9;
height: 90rpx;
width: 100%;
z-index: 100;
display: flex;
justify-content: space-between;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
background: -webkit-linear-gradient(left,#f53a3a,#f53b3a,#f64f46);
.back-image-box{
display: flex;
justify-content: flex-start;
height: 90rpx;
.back-image{
width: 50rpx;
height: 50rpx;
padding-top: 16rpx;
padding-left: 16rpx;
}
}
.title{
display: flex;
justify-content: center;
padding-top: 20rpx;
font-size: 32rpx;
color: #FFFFFF;
overflow: hidden;
}
.share-image-box{
display: flex;
justify-content: flex-end;
padding-left: 20rpx;
height: 90rpx;
.share-image{
width: 50rpx;
height: 50rpx;
padding-top: 16rpx;
padding-right: 30rpx;
}
}
}
</style>
如果var(--status-bar-height)没有用或者报错,请引入uni.scss,uni.scss文件可以创建一个hello-uniapp,从里面拷贝过来
注意事项 https://uniapp.dcloud.io/collocation/pages?id=customnav,访问此处链接查看
方法二、
使用原生导航栏,通过API 动态修改
pages.json 里面的配置原始的值不要改变
如果需要在页面进入时设置标题,可以在onReady内执行,以避免被框架内的修改所覆盖。如果必须在onShow内执行需要延迟一小段时间
在指定页面使用如下代码:
uni.setNavigationBarTitle({
title: '新的标题'
});
uni.setNavigationBarColor({
frontColor: '#000000', //前景颜色值,包括按钮、标题、状态栏的颜色,仅支持 #ffffff 和 #000000
backgroundColor: '#F0AD4E', //背景颜色值,有效值为十六进制颜色
animation: { //动画效果
duration: 400,
timingFunc: 'easeIn'
}
})
文档地址:https://uniapp.dcloud.io/api/ui/navigationbar?id=setnavigationbartitle
uni-app动态修改顶部导航栏标题的更多相关文章
- [置顶]
xamarin Tablayout+Viewpager+Fragment顶部导航栏
最近几天不忙,所以把项目中的顶部导航栏的实现归集一下.android中使用TabLayout+ViewPager+Fragment制作顶部导航非常常见,代码实现也比较简单.当然我这个导航栏是基于xam ...
- android开发(49) android 使用 CollapsingToolbarLayout ,可折叠的顶部导航栏
概述 在很app上都见过 可折叠的顶部导航栏效果.google support v7 提供了 CollapsingToolbarLayout 可以实现这个效果.效果图如下: 实现步骤 1. 写 ...
- 【转】iOS中设置导航栏标题的字体颜色和大小
原文网址:http://www.360doc.com/content/15/0417/11/20919452_463847404.shtml iOS中设置导航栏标题的字体颜色和大小,有需要的朋友可以参 ...
- iOS中设置导航栏标题的字体颜色和大小
iOS中设置导航栏标题的字体颜色和大小,有需要的朋友可以参考下. 在平时开发项目的时候,难免会遇到修改导航栏字体大小和颜色的需求,一般使用自定义视图的方法,其实还存在一种方法. 方法一:(自定义视图的 ...
- Discuz常见小问题-如何修改顶部导航
1 除了主导航,我们还有一些其他的导航菜单需要设置,比如顶部导航栏,注意系统内置的最好不要修改,如果我不想显示系统内置的,则取消勾选即可.下面我自己做了两个新的顶部导航超链接,分别指向新的站外的地址. ...
- 使用PagerSlidingTabStrip实现顶部导航栏
使用PagerSlidingTabStrip配合ViewPager实现顶部导航栏. 效果图如下: PagerSlidingTabStrip是github上的一个开源项目,项目地址如下 ...
- Android之仿今日头条顶部导航栏效果
随着时间的推移现在的软件要求显示的内容越来越多,所以要在小的屏幕上能够更好的显示更多的内容,首先我们会想到底部菜单栏,但是有时候像今日头条新闻客户端要显示的内容太多,而且又想在主界面全部显示出来,所以 ...
- 用Vue来实现音乐播放器(五):路由配置+顶部导航栏组件开发
路由配置 在router文件夹下的index.js中配置路由 import Vue from 'vue' import Router from 'vue-router'//配置路由前先引入组件impo ...
- 外贸电子商务网站之Prestashop修改顶部导航
如修改以上所示顶部导航. 如何在prestashop顶部导航栏添加链接,Module>Top horizontal menu点击进入Configure页面 1,在Settings 中看到 链接 ...
随机推荐
- strom_hdfs与Sequence详解
这片博客主要是讲解storm-hdfs,Squence及它们的trident方法使用,不多说上代码: pom.xml <dependency> <groupId>org.apa ...
- 接上一篇:vue零基础入门记录
上一篇的vue项目已经搭建运行了起来,我用惯了idea这里也用的idea打开的项目.貌似其他软件写前端更好. 打开项目的项目路径是这样的 写惯了后台,第一眼看的时候感觉这个项目路径很乱,后面才知道我们 ...
- HDU5293 树链剖分+树形DP
=-=抓住叶节点往上揪 Tree chain problem Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 65536/65536 K ...
- 1、JavaScript中的Cookie 用于存储 web 页面的用户信息。
总结:每个浏览器都有一定数量限制的cookie.每个浏览器中,每一个cookie都有一个path路径,指向请求访问的网页. -------------------------------------- ...
- springboot使用Jwt处理跨域认证问题
在前后端开发时为什么需要用户认证呢?原因是由于HTTP协定是不存储状态的,这意味着当我们透过账号密码验证一个使用者时,当下一个request请求时他就把刚刚的资料忘记了.于是我们的程序就不知道谁是谁了 ...
- VUE 关键字
转 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&q ...
- [推荐]大量 Blazor 学习资源(二)
继上一篇<[推荐]大量 Blazor 学习资源(一)>之后,社区反应不错,但因个人原因导致这篇文章姗姗来迟,不过最终还是来了!这篇文章主要收集一些常用组件.书籍和电子书. 资料来源:htt ...
- 插入与读取Blob类型数据
BlobTest package com.aff.PreparedStatement; import java.io.File; import java.io.FileInputStream; imp ...
- jQuery——选择器效率
N1:$('#box').find('p'):最快,直接了当的找到对应的节点jQuery对象: N2:$('p','#box'):注意不是$('p,#box')!!!,jQuery会按照从右往左的顺序 ...
- Hello, CTF
0x01 拿到题目后查壳,发现什么也没有,32位vc++ 0x02 放到IDA里,F5反编译,得到下图 很容易我们就看到了比较的函数,以及出现wrong和success的字符串,所以接下来就是仔细分析 ...