由于項目需求,需要將布局頂部放大狀態欄的空間,類似這種

在網上搜索找到兩種方法:
if (Build.VERSION.SDK_INT >= 19){ WindowManager.LayoutParams localLayoutParams = mActivity.getWindow().getAttributes(); localLayoutParams.flags = (WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS | localLayoutParams.flags); if (fmMain != null) {<span style="white-space:pre"> </span>//fmMain:自定義的頂部導航條 <span style="white-space:pre"> </span>LinearLayout.LayoutParams layoutParams = (LinearLayout.LayoutParams) fmMain.getLayoutParams(); <span style="white-space:pre"> </span>layoutParams.setMargins(0, ChuangChuangApp.STATUSBARHEIGHT, 0, 0);//STATUSBARHEIGHT狀態欄高度 fmMain.setLayoutParams(layoutParams);<span style="white-space:pre"> </span>//設置頂部margin值 } } 一般情況下margin值是可以不用設置的,這里因人而異;然后可以將導航條的背景設置成透明就可以達到效果了
另外一種方法:
if (Build.VERSION.SDK_INT >= 21) { View decorView = getWindow().getDecorView(); fmMain.setBackgroundColor(Color.TRANSPARENT); int option = View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN | View.SYSTEM_UI_FLAG_LAYOUT_STABLE; decorView.setSystemUiVisibility(option); getWindow().setStatusBarColor(Color.TRANSPARENT); } 以上所述是小編給大家介紹的Android頂部狀態欄透明化并釋放空間的兩種實現方法,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對VEVB武林網網站的支持!
新聞熱點
疑難解答