flutter屏幕尺寸計(jì)算問題

var kwidth = MediaQuery.of(context).size.width;
    var kheight = MediaQuery.of(context).size.height;
    var paddingT = MediaQuery.of(context).padding.top;
    var paddingB = MediaQuery.of(context).padding.bottom;
針對沒有appBar: AppBar(title: Text("A"),),。這就是顯示區(qū)域的全屏
width: kwidth, 
height: kheight,
整個(gè)屏幕寬高就是顯示頁面寬高
return Scaffold(
      backgroundColor: Colors.blue,
      body: Stack(
        children: [
          Positioned(
            child: Container(
                width: kwidth, 
                height: kheight, 
                color: Colors.grey,
            ),
          ),
        ],
      ),
    );
針對有appBar: AppBar(title: Text("A"),),。
width: kwidth,
height: kheight - paddingT - kToolbarHeight,  
顯示頁面高度需要減狀態(tài)欄高度paddingT
顯示頁面高度需要減導(dǎo)航欄高度kToolbarHeight
return Scaffold(
      backgroundColor: Colors.blue,
      appBar: AppBar(
        title: Text("A"),
      ),
      body: Stack(
        children: [
          Positioned(
            child: Container(
              width: kwidth,
              height: kheight - paddingT - kToolbarHeight,
              color: Colors.grey,
            ),
          ),
        ],
      ),
    );
有時(shí)候還需要考慮底部安全區(qū)域
height: kheight - paddingT - kToolbarHeight - paddingB,  
SafeArea組件幫我們剪掉了paddingT和paddingB
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容