最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

微信小程序自定義狀態(tài)欄

 更新時(shí)間:2022年04月13日 14:39:44   作者:我是來寫bug的吧  
這篇文章主要為大家詳細(xì)介紹了微信小程序自定義狀態(tài)欄,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了微信小程序自定義狀態(tài)欄的具體代碼,供大家參考,具體內(nèi)容如下

首先我們需要在json文件中修改一下配置。如果我們只需要在一個(gè)頁面使用自定義狀態(tài)欄,我們可以在這個(gè)頁面的json文件中修改;如果所有頁面都需要使用,我們直接在app.json中修改。

"navigationStyle": "custom",

wxml:

<view class="bgcItem" style="height:{{sumHeight}};">
? ? <view class="head" style="height:{{headHeight}};top:{{headTop}}">
? ? ? <image src="../../static/image/adress.png"></image>
? ? ? <view>{{appname}}</view>
? ? </view>
</view>

wxss:

.bgcItem{
? top: 0rpx;
? background-color: #fff;
? position: fixed;
? width: 100%;
? z-index: 999;
}
.head{
? display: flex;
? justify-content: flex-start;
? align-items: center;
? width: 100%;
? height: 130rpx;
? text-align: center;
? position: fixed;
? top: 0rpx;
? left: 0;
? z-index: 999;
? background-color: #fff;
}
?
.head>image {
? width: 24rpx;
? height: 24rpx;
? margin-left: 30rpx;
}
?
.head>view {
? font-size: 28rpx;
? color: #1a1a1a;
? margin-left: 8rpx;
? height: 100%;
? display: flex;
? justify-content: flex-start;
? align-items: center;
}

wx.getSystemInfo是獲取系統(tǒng)信息的API

wx.getSystemInfo({
? ? success(res) {
? ? ? // res是設(shè)備信息
? ? ? // menuButton是右邊膠囊按鈕的信息
? ? ? let menuButton = wx.getMenuButtonBoundingClientRect()
? ? ? let titleBarHeight = (menuButton.top - res.statusBarHeight) * 2 + menuButton.height?
? ? ? this.setData({
? ? ? headHeight: titleBarHeight * 2 + 'rpx',
? ? ? headTop: res.statusBarHeight * 2 + 'rpx',
? ? ? sumHeight: titleBarHeight * 2 + res.statusBarHeight * 2 + 'rpx'
? ? ? ?})
? ? ?}
? })

圖片中的(1)是menuButton.top

圖片中的(2)是res.statusBarHeight

那我們求(3)怎么算呢?  是不是(1) - (2)呢? 

即menuButton.top - res.statusBarHeight;那為什么乘2呢? 是不是膠囊按鈕下面還有一段距離,   也就是和(3)相等的距離,所以乘2。

既然我們把(3)求出來了,那我們想得到什么值就得到什么值了。

比如求整體的高度就是:(menuButton.top - res.statusBarHeight) * 2 + menuButton.height + res.statusBarHeight。

我們也可以把上面的代碼寫在app.js的onLaunch函數(shù)中

// 當(dāng)小程序初始化完成時(shí),會觸發(fā) onLaunch(全局只觸發(fā)一次)
?onLaunch: function () {
? ?wx.getSystemInfo({
? ? ?success(res) {
? ? ? ?// res是設(shè)備信息
? ? ? ?// menuButton是右邊膠囊按鈕的信息
? ? ? ?let menuButton = wx.getMenuButtonBoundingClientRect()
? ? ? ?let titleBarHeight = (menuButton.top - res.statusBarHeight) * 2 + menuButton.height?
? ? ? ?+ res.statusBarHeight
? ? ? ?this.globalData.titleBarHeight = titleBarHeight
? ? ? }
? ? })
? },

我們可以將計(jì)算好的值存在globalData中,globalData是在app.js中定義。

我們在小程序初始化的時(shí)候計(jì)算好,并且將值也存在了globalData中,在其他頁面使用的時(shí)候我們可以直接寫

var App = getApp();
onLoad: function (options) {
? ? this.setData({
? ? ? titleBarHeight: App.globalData.titleBarHeight
? ? })
?},

那么titleBarHeight就是我們計(jì)算好的值,我們可以直接使用了。 

還有一種不需要使用自定義狀態(tài)欄的,我們只想修改狀態(tài)欄的顏色,那這個(gè)是很簡單的。我們可以直接在json里寫上

"navigationBarTitleText": "首頁",
"navigationBarTextStyle": "white",
"navigationBarBackgroundColor": "#ff00ff"

效果

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

云安县| 梅河口市| 石首市| 开阳县| 吉林市| 邯郸市| 武隆县| 阳高县| 万年县| 射洪县| 北辰区| 建瓯市| 威信县| 白水县| 吴堡县| 永兴县| 金溪县| 嘉鱼县| 商城县| 招远市| 上林县| 加查县| 甘谷县| 西安市| 蒲江县| 南安市| 山阴县| 博乐市| 广州市| 稷山县| 城口县| 邢台市| 石台县| 石渠县| 定南县| 永宁县| 漯河市| 读书| 电白县| 辽宁省| 蓬溪县|