当前位置:首页 > 经验 >

ss导航怎么用(ss导航官方下载)

来源:原点资讯(www.yd166.com)时间:2022-10-29 15:20:48作者:YD166手机阅读>>

目前小程序已在前端占了一席之地,最近公司项目上用的就是小程序开发,由于功能及页面不是很多,所以直接原生开发,毕竟坑可能会少点,在开发过程中,小程序自带导航栏和客户的设计稿导航栏排在一起,感觉很别扭,因此要求去掉微信的自带导航栏,微信提供了这方面的api,接下来我们就实操。

ss导航怎么用,ss导航官方下载(1)

这是小程序官方文档截图,可以看到导航栏样式支持两种,默认是带导航栏,另外一种是自定义导航栏-custom,如果使用自定义导航栏,我们可以

全局配置

//app.json
"window": {
"navigationStyle": "custom"
}

单页面配置

//page.json
{
"navigationStyle": "custom"
}

效果对比

ss导航怎么用,ss导航官方下载(2)

能明显的看出来,自定义导航栏页面内容已经顶到屏幕顶端,除了胶囊按钮,其他都是页面可控区域。每个手机的屏幕都不一样,各家系统的状态栏高度也不一样,因此,我们在开发页面时要考虑屏幕的适配,有刘海的,要留出刘海的距离,没有的,要把状态栏高度留出来。

1.获取导航栏高度及按钮位置

微信提供了获取导航栏高度的Api和胶囊按钮位置的Api

// 系统信息
const systemInfo = wx.getSystemInfoSync();
// 胶囊按钮位置信息
const menuButtonInfo = wx.getMenuButtonBoundingClientRect();

在控制台打印出这两个Api返回结果

ss导航怎么用,ss导航官方下载(3)

这里面我们只说几个我们接下来用到的参数。

statusBarHeight // 状态栏高度
screenWidth // 胶囊的宽度

top // 胶囊到顶部距离
height // 胶囊的高度
right // 胶囊距离右边的距离

通过这几个参数,我们可以计算出状态栏的高度,微信胶囊所占的高度(存在padding值,可以使元素和胶囊纵向居中)

首先在app.js中定义全局data-globalData

globalData: {
navBarHeight: 0, // 导航栏高度
menuBotton: 0, // 胶囊距底部间距(保持底部间距一致)
menuRight: 0, // 胶囊距右方间距(方保持左、右间距一致)
menuHeight: 0, // 胶囊高度(自定义内容可与胶囊高度保证一致)
},

新建个方法

setNavBarInfo() {
// 获取系统信息
const systemInfo = wx.getSystemInfoSync();
// 胶囊按钮位置信息
const menuButtonInfo = wx.getMenuButtonBoundingClientRect();
// 导航栏高度 = 状态栏到胶囊的间距(胶囊距上距离-状态栏高度) * 2 胶囊高度 状态栏高度
this.globalData.navBarHeight = (menuButtonInfo.top - systemInfo.statusBarHeight) * 2 menuButtonInfo.height systemInfo.statusBarHeight;
this.globalData.menuBotton = menuButtonInfo.top - systemInfo.statusBarHeight;
this.globalData.menuRight = systemInfo.screenWidth - menuButtonInfo.right;
this.globalData.menuHeight = menuButtonInfo.right;
}

在onLaunch中调用,因为我这个项目是所有的导航都不用微信自带的,所以在app.js

中调用及设置data。

onLaunch() {
this.setNavBarInfo()
},

到这里所需要用到的都已经存了起来,页面用法也比较简单,排除状态栏的高度,设置导航栏的高度和胶囊高度保持,用flex布局。

2.页面适配

首先page.js中定义变量

var app = getApp()
Page({
/**
* 页面的初始数据
*/
data: {
navBarHeight: app.globalData.navBarHeight, //导航栏高度
menuBotton: app.globalData.menuBotton, //导航栏距离顶部距离
menuRight: app.globalData.menuRight, //导航栏距离右侧距离
menuHeight: app.globalData.menuHeight, //导航栏高度
}
})

页面使用

<view class="nav" style="height:{{navBarHeight}}px;">
<view class="nav-main">
<!-- 胶囊区域 -->
<view
class="capsule-box" style="style="height:{{menuHeight menuBotton*2}}px; min-height:{{menuHeight}}px; line-height:{{menuHeight}}px; bottom:0px;padding:0 {{menuRight}}px;">
<!-- 导航内容区域 -->
<slot></slot>
</view>
</view>
</view>

wxss

/* 公共导航 */
.nav {
position: fixed;
top: 0;
left: 0;
box-sizing: border-box;
width: 100vw;
z-index: 1000;
}
.nav-main {
width: 100%;
height: 100%;
box-sizing: border-box;
position: relative;
}
.nav .capsule-box {
position: absolute;
box-sizing: border-box;
width: 100%;
display: flex;
align-items: center;
}

最终效果

ss导航怎么用,ss导航官方下载(4)


此种适配方案适应所有手机,应该说是最优的选择。

栏目热文

有没有国际版导航软件(在国外能用的导航软件)

有没有国际版导航软件(在国外能用的导航软件)

IT之家 9 月 1 日消息,三星已开始从美国地区开始向 Galaxy S22 系列推出 One UI 4.1.1 更新...

2022-10-29 15:15:29查看全文 >>

全球十大导航软件(十大导航app)

全球十大导航软件(十大导航app)

一、韩国韩国是全球智能制造的强国之一。韩国制造业曾排名全球第六。韩国制造业的出口额曾位居世界第六;韩国机器人利用率居世界...

2022-10-29 15:01:55查看全文 >>

国际手机导航软件哪个最好(美国什么导航软件好用)

国际手机导航软件哪个最好(美国什么导航软件好用)

卫星定位系统的出现对人们的生活方式产生了极大的影响,对于出门不认路的人来说,只要携带的手机安装了导航软件,基本上都能跟着...

2022-10-29 14:57:57查看全文 >>

北美最好的导航软件(美国导航软件下载)

北美最好的导航软件(美国导航软件下载)

提到全球导航系统,不少朋友第一个想到的,都会是美国的GPS。从时间上来看,早在1989年的时候,GPS就已经进入到中国市...

2022-10-29 15:09:06查看全文 >>

韩国导航软件有哪些(韩国导航app)

韩国导航软件有哪些(韩国导航app)

应用分析公司WiseApp公司发布了一份关于2020年底十岁以上安卓和苹果系统智能手机用户分析报告,该报告显示下列是韩国...

2022-10-29 14:58:21查看全文 >>

国外常用中文导航软件(在国外的中文导航软件)

国外常用中文导航软件(在国外的中文导航软件)

近日多个软件公示将不再支持未经国家允许的地图源,如谷歌地图、必应地图等,其中更有不少软件是穿越常用的手机软件。借此机会小...

2022-10-29 15:13:23查看全文 >>

韩国最实用的导航软件(韩国导航软件中文版)

韩国最实用的导航软件(韩国导航软件中文版)

对于任何使用电脑的用户来说,浏览和观看图片的需求都是必不可少的。Windows系统自带的看图软件功能比较简单,并且支持的...

2022-10-29 15:31:39查看全文 >>

国际离线导航软件(全球最好的导航软件)

国际离线导航软件(全球最好的导航软件)

谷歌已经在今年的谷歌IO大会上确认了地图离线导航功能,如今该功能已经可以在安卓机上使用了。这对网络资源较为贫瘠且相对昂贵...

2022-10-29 15:17:22查看全文 >>

北美导航软件哪个最好(美洲什么导航软件好使)

北美导航软件哪个最好(美洲什么导航软件好使)

出品 | 虎嗅汽车组作者 | 王笑渔编辑 | 周到头图 | 视觉中国2021年4月,上海车展开幕前,一台搭载华为ADS(...

2022-10-29 15:11:10查看全文 >>

韩国导航软件(韩国导航app哪个好)

韩国导航软件(韩国导航app哪个好)

当去到异国他乡求学时,最重要的显然是衣食住行,而在如今手机不离身的时代,手机里的APP也是丰富多彩的,那么今天小编来给大...

2022-10-29 15:11:55查看全文 >>

文档排行