首页 > 解决方案 > 使用Android Navigation Component,如何使actionBar透明并在单个Fragment中使布局全屏?

问题描述

我将 Google 推荐的单一活动模式与 Android Jetpack 的导航组件一起使用。

我正在努力实现这个设计。我想让 actionBar(如果可能的话,还有 statusBar)在单个 Fragment 中透明。我还需要让我的 XML 布局中的相机视图填满整个屏幕,因此 actionBar(可能还有 statusBar)位于它之上。

我已经尝试过诸如supportActionBar?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT)).addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS)其他黑客之类的东西,但似乎没有一个能正常工作。要么他们什么都不做,要么将 actionBar 移到 statusBar 的顶部,要么产生其他不希望的效果。

任何帮助将不胜感激。

标签: androidandroid-actionbarfragmentfullscreenandroid-navigation

解决方案


每当我需要一个透明的操作栏时,这对我有用:

getWindow().requestFeature(Window.FEATURE_ACTION_BAR_OVERLAY);
actionBar.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));

希望这可以帮助


推荐阅读