直播平臺開發,scroll-view如何自適應頁面剩餘高度

zhibo系統開發發表於2022-12-02

直播平臺開發,scroll-view如何自適應頁面剩餘高度

首先想到的方法是透過計算得出scroll-view的高度,使用100vh即視口高度,減去上下兩個元件和手機狀態列的高度,得到剩餘的高度即scroll-view的高度。

onLoad(options){
uni.getSystemInfo({
success: (res) => {
// 獲取手機狀態列高度
this.statusBarHeight = res.statusBarHeight;
this.scrollviewHeight = `calc(100vh - 98rpx - 110rpx - ${this.statusBarHeight}px)`;
}
});
}


給標籤新增行內樣式:

<scroll-view class="chat-main" 
 scroll-y="true" 
 :scroll-into-view="scrollToView"
 :scroll-with-animation="needScrollAnimation"
 @scrolltoupper="debounce"
 :style="{height:scrollviewHeight}">
</scroll-view>


但這種方法需要使用js計算不太簡便,可以使用flex佈局,將主軸設為y軸,隨後指定另外兩個元件的高度,scroll-view區域使用flex:1高度自適應即可。需要注意的是除了自適應區域以外的元素一定要指定高度,如果沒有確定的高度可以指定相對高度。還有就是page是小程式預設包裹在最外層的標籤,也要指定高度height:100%

<view class="box"> 
 <top-bar class="box-head"></top-bar>
 <scroll-view class="box-scroll"></scroll-view>
 <bottom-bar class="box-bottom"></bottom-bar>
</view>
page{
 height:100%;
}
.box {
 display: flex;
 flex-direction:column;
 height:100vh;     /*高度必須指定 或者寫成100%*/
 overflow:hidden;
}
.box-head {
 flex-shrink: 0;
 height: 55px;
}
.box-scroll {
 flex: 1;
 overflow: scroll;   /*必須寫這一條*/
 height: 1px;
}
.box-bottom {
 height:49px;
}


以上就是 直播平臺開發,scroll-view如何自適應頁面剩餘高度,更多內容歡迎關注之後的文章


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69978258/viewspace-2926450/,如需轉載,請註明出處,否則將追究法律責任。

相關文章