国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

微信小程序云開(kāi)發(fā)之自定義頂部導(dǎo)航欄搜索框(非組件)

這篇具有很好參考價(jià)值的文章主要介紹了微信小程序云開(kāi)發(fā)之自定義頂部導(dǎo)航欄搜索框(非組件)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

前言

提到微信小程序,就不得不提到它那磨人的頂部導(dǎo)航欄,真的有被丑到。身為強(qiáng)迫癥患者,筆者實(shí)在是難以忍受,好在官方提供了解決方案,但是對(duì)于初學(xué)者還是有一丟丟的難度,為了初學(xué)者不在重蹈筆者的老路,這篇文章就給大家分享一下如何做一個(gè)好看的自定義頂部導(dǎo)航欄。

注意:本篇文章分享的是如何做一個(gè)好看的自定義導(dǎo)航欄,不是做組件哦!

正文

一、隱藏原生navigationBar

navigation-bar是小程序的頂部導(dǎo)航組件,當(dāng)頁(yè)面配置navigationStyle設(shè)置為custom的時(shí)候可以使用此組件替代原生導(dǎo)航欄。

1.全局自定義頂部導(dǎo)航欄

在app.json的“window”里添加"navigationStyle": "custom"

"window": {
	"navigationStyle": "custom"
}

2.單獨(dú)頁(yè)面自定義頂部導(dǎo)航欄

在該頁(yè)面的json文件里添加"navigationStyle": "custom"

{
  "usingComponents":{},
  "navigationStyle": "custom"
}

二、獲取系統(tǒng)及按鈕信息

1.js頁(yè)面

獲取系統(tǒng)信息并計(jì)算按鈕位置信息

const app=getApp()
Page({
  data: {
    page_show:false,
    navHeight: '',
    menuButtonInfo: {},
    searchMarginTop: 0, // 搜索框上邊距
    searchWidth: 0, // 搜索框?qū)挾?    searchHeight: 0 ,// 搜索框高度
  },


  onLoad: function (options) {
    var systeminfo=wx.getSystemInfoSync()
    //console.log(systeminfo.windowHeight)
    this.setData({
      movehight:systeminfo.windowHeight,
      movehight2:systeminfo.windowHeight-100
    })

    this.setData({
      menuButtonInfo: wx.getMenuButtonBoundingClientRect()
    })
    console.log(this.data.menuButtonInfo)
    const { top, width, height, right } = this.data.menuButtonInfo
    wx.getSystemInfo({
      success: (res) => {
        const { statusBarHeight } = res
        const margin = top - statusBarHeight
        this.setData({
          navHeight: (height + statusBarHeight + (margin * 2)),
          searchMarginTop: statusBarHeight + margin, // 狀態(tài)欄 + 膠囊按鈕邊距
          searchHeight: height,  // 與膠囊按鈕同高
          searchWidth: right - width -20// 膠囊按鈕右邊坐標(biāo) - 膠囊按鈕寬度 = 按鈕左邊可使用寬度
        })
      }
    })

  }, 
})

2.wxml頁(yè)面

通過(guò)獲取的數(shù)據(jù)編寫(xiě)搜索框

<!--搜索-->
<view  style="height:{{navHeight}}px;background:#ffffff;position: sticky;top: 0px;z-index:99999; " >
  <view class="custom-bar__wrapper" style="margin-top:{{searchMarginTop}}px; height: {{searchHeight}}px;width: {{searchWidth}}px;position:absolute;" >
    <view class="search-group" style="position:absolute;">
      <image    style="left: 7rpx;" src="/images/icon/sousuo.png" mode="aspectFit" />
      <input  class="search-group__input" type="text" placeholder="搜搜校園日常動(dòng)態(tài)吧!" placeholder-style="color:#161823;" confirm-type="search" value="{{search}}" maxlength="25" bindconfirm="search"></input>
    </view>
  </view>
</view>

3.css頁(yè)面

美化搜索框

.custom-bar__wrapper {
  left: 24rpx;
  padding: 0 10rpx;
  display: flex;
  justify-content: center;
  align-items: center;
}
.search-group {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  background:#F0F8FF ;
  border-radius: 100rpx;
  padding: 0 15rpx;
}
.search-group > input {
  font-size: 25rpx;
  left: 14px;
}
.search-group > image {
  height: 36rpx;
  width: 36rpx;
  margin-right: 20rpx
}

4.app.js頁(yè)面

這是最容易忘的頁(yè)面,一定要記得編寫(xiě)

App({
  onLaunch: function () {
    wx.getSystemInfo({
      success: e => {
        this.globalData.StatusBar = e.statusBarHeight;
        let custom = wx.getMenuButtonBoundingClientRect();
        this.globalData.Custom = custom;  
        this.globalData.CustomBar = custom.bottom + custom.top - e.statusBarHeight;
      }
    })
  },
})

三、查看效果

微信小程序云開(kāi)發(fā)之自定義頂部導(dǎo)航欄搜索框(非組件)

微信小程序云開(kāi)發(fā)之自定義頂部導(dǎo)航欄搜索框(非組件)

?總結(jié)思路

  • 隱藏原生頂部導(dǎo)航欄
  • 獲取膠囊按鈕、狀態(tài)欄相關(guān)數(shù)據(jù)以供后續(xù)計(jì)算
  • 根據(jù)不同機(jī)型計(jì)算出該機(jī)型的導(dǎo)航欄高度,進(jìn)行適配
  • 編寫(xiě)新的導(dǎo)航欄頁(yè)面
  • 應(yīng)用獲取的按鈕參數(shù)
  • css美化界面

飛魚(yú)程序猿

如果這篇文章對(duì)您有幫助,麻煩給個(gè)免費(fèi)的贊哦

或者關(guān)注微信公眾號(hào)【飛魚(yú)程序猿】獲取更多信息。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-495684.html

到了這里,關(guān)于微信小程序云開(kāi)發(fā)之自定義頂部導(dǎo)航欄搜索框(非組件)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • uni-app微信小程序,APP都適用自定義頂部導(dǎo)航

    uni-app微信小程序,APP都適用自定義頂部導(dǎo)航

    *使用自定義的導(dǎo)航樣式,首先需要把原生的頂部的導(dǎo)航方式給隱藏掉(\\\"navigationStyle\\\": \\\"custom\\\") *手機(jī)頂部手機(jī)狀態(tài)欄的高度 *微信小程序中膠囊的位置信息存儲(chǔ)(使用store存儲(chǔ)) *由于微信小程序中帶有導(dǎo)航膠囊,所以需要根據(jù)膠囊去獲取一定的參數(shù)信息 在微信小程序中,我們只需要獲

    2024年02月06日
    瀏覽(91)
  • 微信小程序第一節(jié) —— 自定義頂部、底部導(dǎo)航欄以及獲取膠囊體位置信息。

    微信小程序第一節(jié) —— 自定義頂部、底部導(dǎo)航欄以及獲取膠囊體位置信息。

    dai ga hou??!我是 ?????? 是江迪呀 。我們?cè)谶M(jìn)行微信小程序開(kāi)發(fā)時(shí),常常需要自定義一些東西,比如 自定義頂部導(dǎo)航 、 自定義底部導(dǎo)航 等等。那么知道這些自定義內(nèi)容的具體位置、以及如何適配不同的機(jī)型就變得尤為重要。下面讓我以在iPhone機(jī)型,來(lái)給大家介紹下 微信

    2024年02月02日
    瀏覽(36)
  • 微信小程序之自定義組件開(kāi)發(fā)

    微信小程序之自定義組件開(kāi)發(fā)

    從小程序基礎(chǔ)庫(kù)版本 1.6.3 開(kāi)始,小程序支持簡(jiǎn)潔的組件化編程。所有自定義組件相關(guān)特性都需要基礎(chǔ)庫(kù)版本 1.6.3 或更高。開(kāi)發(fā)者可以將頁(yè)面內(nèi)的功能模塊抽象成自定義組件,以便在不同的頁(yè)面中重復(fù)使用;也可以將復(fù)雜的頁(yè)面拆分成多個(gè)低耦合的模塊,有助于代碼維護(hù)。自

    2024年02月02日
    瀏覽(104)
  • 微信小程序自定義頂部導(dǎo)航欄的膠囊和微信自帶的膠囊一樣的透明背景色

    微信小程序自定義頂部導(dǎo)航欄的膠囊和微信自帶的膠囊一樣的透明背景色

    想要實(shí)現(xiàn)微信自帶的右上角膠囊背景透明很簡(jiǎn)單,只需要在pages.js里面設(shè)置下面配置就可以了: 但是設(shè)置完這個(gè)后,膠囊的背景色是那種黑色半透明的效果:(微信開(kāi)發(fā)者工具和真機(jī)上顯示的效果不一致,要以真機(jī)為準(zhǔn)) 手機(jī)端的效果:所以還是要以手機(jī)端為準(zhǔn) ? 左側(cè)的返

    2024年02月01日
    瀏覽(37)
  • 小程序?qū)崿F(xiàn)自定義頂部導(dǎo)航欄搜索框

    小程序?qū)崿F(xiàn)自定義頂部導(dǎo)航欄搜索框

    在實(shí)現(xiàn)前先將其組件化,方便復(fù)用, (底部有demo) Component(Object object) | 微信開(kāi)放文檔 \\\"component\\\": true, // 自定義組件聲明 \\\"usingComponents\\\": {} // 可選項(xiàng),用于引用別的組件 \\\"navigationStyle\\\": \\\"custom\\\"http://?導(dǎo)航欄樣式?? default ?默認(rèn)樣式?? custom ?自定義導(dǎo)航欄,只保留右上角膠囊按鈕 接下

    2024年02月12日
    瀏覽(22)
  • uniapp使用Uview的Navbar自定義微信小程序頂部導(dǎo)航欄,滾動(dòng)漸變透明效果;看完不會(huì)我下跪
  • 微信原生小程序自定義頂部導(dǎo)航

    微信原生小程序自定義頂部導(dǎo)航

    都2023了,自定義頂部導(dǎo)航應(yīng)該不是什么新鮮事了,這里只是簡(jiǎn)單記錄下 微信自己也提供了自定義頂部導(dǎo)航 navigation-bar ,大概看了下,可配置的也不少,所以看需求了,如果簡(jiǎn)單可以采用微信提供的,老規(guī)矩,先看效果 狀態(tài)欄高度(getSystemInfoSync),就是手機(jī)頂部網(wǎng)絡(luò)那塊的

    2024年02月15日
    瀏覽(24)
  • 微信小程序自動(dòng)獲取頂部導(dǎo)航欄高度

    微信小程序自動(dòng)獲取頂部導(dǎo)航欄高度

    1、本人是通過(guò)uniapp開(kāi)發(fā)的微信小程序,原生開(kāi)發(fā)基本相同,首先在data里聲明變量 2、其次在onLoad生命周期中獲取當(dāng)前手機(jī)的導(dǎo)航欄寬高數(shù)據(jù) 3、navHeight獲取的是當(dāng)前手機(jī)型號(hào)的導(dǎo)航欄總高度;searchMarginTop獲取的是手機(jī)頂部到小程序膠囊的高度,也就是下圖黃色線框的高度;

    2024年02月11日
    瀏覽(34)
  • 【微信小程序】頭部導(dǎo)航欄背景鋪滿頂部

    【微信小程序】頭部導(dǎo)航欄背景鋪滿頂部

    背景:使用uniapp開(kāi)發(fā)微信小程序 需求:需要微信小程序頂部導(dǎo)航欄使用頁(yè)面背景鋪滿頂部 我們可以利用 navigationStyle 屬性,來(lái)處理導(dǎo)航欄樣式,支持 default/custom,其中 custom 可自定義導(dǎo)航欄,只保留右上角膠囊狀的按鈕。 在pages.json 文件里,將globalStyle中新增或修改 navigatio

    2024年02月16日
    瀏覽(26)
  • 微信小程序——頂部搜索框

    微信小程序——頂部搜索框

    一點(diǎn)小小的聲明:學(xué)習(xí)筆記,若有不妥之處還望指正,Thanks?(?ω?)? 參考視頻微信小程序?qū)嵗獜娜腴T到精通 效果展示: 步驟:? 首先需要建立一個(gè)存放圖片的文件夾images,該文件夾放置在最外層。將此圖放入文件夾。后續(xù)需要使用的圖片也都可以放入此文件夾中。

    2024年02月11日
    瀏覽(20)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包