使用Android Navigation Component,如何使actionBar透明并在单个Fragment中使布局全屏?

     2023-04-15     24

关键词:

【中文标题】使用Android Navigation Component,如何使actionBar透明并在单个Fragment中使布局全屏?【英文标题】:Using Android Navigation Component, how to make actionBar transparent and make layout full screen in single Fragment? 【发布时间】:2020-04-24 02:37:29 【问题描述】:

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

我正在努力实现this design。我想让 actionBar(如果可能的话,还有 statusBar)在单个 Fragment 中透明。我还需要让我的 XML 布局中的摄像头视图填满整个屏幕,因此 actionBar(可能还有 statusBar)位于其顶部。

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

任何帮助将不胜感激。

【问题讨论】:

【参考方案1】:

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

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

希望对你有帮助

【讨论】:

如果使用活动而不是 Androidx 导航组件/片段,此代码似乎效果最佳。我尝试在我的 Fragment 上应用它,并得到 "requestFeature() must be called before added content" 错误。然后我尝试在我的 MainActivity 中应用它,但没有效果。 哦,好吧是有道理的。我会调查一下,看看我是否能找到解决您问题的方法。很抱歉那没有用。那么您是否要使片段透明?您是否尝试在片段的 xml 中将其背景颜色设置为透明?您还使用导航视图吗? 您也尝试过使用背景颜色的 alpha 值吗?

Android Drawer - 使用 Navigation.findNavController() 导航到多个片段

】AndroidDrawer-使用Navigation.findNavController()导航到多个片段【英文标题】:AndroidDrawer-NavigatingtoMultipleFragmentsusingNavigation.findNavController()【发布时间】:2021-07-1714:39:42【问题描述】:我不知道我这样做是否正确。我在AndroidStudio中使用... 查看详情

android:navigation使用safeargs插件传递参数(代码片段)

Navigation使用safeargs插件传递参数1、使用配置2、举例说明1、MainActivity2、AvalFragment,DovomFragment2.1、AvalFragment2.2、DovomFragment参考1、使用配置afeargs与传统传参方式相比,好处在于安全的参数类型,并且通过谷歌官方的支持ÿ... 查看详情

android:navigation使用safeargs插件传递参数(代码片段)

Navigation使用safeargs插件传递参数1、使用配置2、举例说明1、MainActivity2、AvalFragment,DovomFragment2.1、AvalFragment2.2、DovomFragment参考1、使用配置afeargs与传统传参方式相比,好处在于安全的参数类型,并且通过谷歌官方的支持ÿ... 查看详情

android:安卓学习笔记之navigation的简单理解和使用(代码片段)

Androidnavigation的简单理解和使用1、基本概念1.1、背景1.2、含义2、组成2.1、Navigationgraph2.2、NavHostFragment2.3、NavController3、基本使用3.1、引入依赖3.2、创建导航视图3.3、配置graph:添加fragment3.4、添加NavHostFragment3.5、通过NavControlle... 查看详情

android:安卓学习笔记之navigation的简单理解和使用(代码片段)

Androidnavigation的简单理解和使用1、基本概念1.1、背景1.2、含义2、组成2.1、Navigationgraph2.2、NavHostFragment2.3、NavController3、基本使用3.1、引入依赖3.2、创建导航视图3.3、配置graph:添加fragment3.4、添加NavHostFragment3.5、通过NavControlle... 查看详情

在 Android Navigation 组件中使用 backstack 打开不同层次结构中的片段

】在AndroidNavigation组件中使用backstack打开不同层次结构中的片段【英文标题】:openafragmentinadifferentlevelofhierarchywithbackstackinAndroidNavigationcomponent【发布时间】:2021-10-2810:06:40【问题描述】:我在我的项目中使用导航组件并且:我需... 查看详情

android简易音乐重构mvvmjava版-使用navigation导航组件重构主界面及其他页面跳转(二十)(代码片段)

Android简易音乐重构MVVMJava版-使用Navigation导航组件重构主界面及其他页面跳转(二十)关于效果图实现修改Activity_main.xml页面修改MainActivity.java新建一个libCommon的library(一些kotlin写的工具放在这里)修改nav_graph.xml... 查看详情

android简易音乐重构mvvmjava版-使用navigation导航组件重构主界面及其他页面跳转(二十)(代码片段)

Android简易音乐重构MVVMJava版-使用Navigation导航组件重构主界面及其他页面跳转(二十)关于效果图实现修改Activity_main.xml页面修改MainActivity.java新建一个libCommon的library(一些kotlin写的工具放在这里)修改nav_graph.xml... 查看详情

当我在 LiveData 观察者中使用 navController 时,Android Navigation 组件图停止正常工作

】当我在LiveData观察者中使用navController时,AndroidNavigation组件图停止正常工作【英文标题】:AndroidNavigationcomponentgraphstopworkingproperlywhenIusenavControllerinLiveDataobserver【发布时间】:2019-05-0316:43:49【问题描述】:我在我的演示应用程... 查看详情

android 上的 react-navigation/native goBack 错误

】android上的react-navigation/nativegoBack错误【英文标题】:react-navigation/nativegoBackbugonandroid【发布时间】:2021-11-2613:05:40【问题描述】:我创建了多个页面,但是当我在Android上使用goBack()时,我回到了defaultView但无法按任何内容,并... 查看详情

使用 react-navigation 更改状态栏颜色

】使用react-navigation更改状态栏颜色【英文标题】:Changestatusbarcolorwithreact-navigation【发布时间】:2017-11-0317:06:18【问题描述】:我在我的应用程序中使用来自react-navigation的DrawerNavigator。如果没有任何自定义,Android状态栏是蓝色... 查看详情

使用 Navigation 组件和 BottomNavigationView 的返回堆栈流问题

】使用Navigation组件和BottomNavigationView的返回堆栈流问题【英文标题】:IssuewithBackstackflowusingNavigationcomponentandBottomNavigationView【发布时间】:2021-04-2620:57:24【问题描述】:我正在使用Android导航组件。FragmentContainerView(NavHostFragment)有... 查看详情

使用Android Navigation Component,如何使actionBar透明并在单个Fragment中使布局全屏?

】使用AndroidNavigationComponent,如何使actionBar透明并在单个Fragment中使布局全屏?【英文标题】:UsingAndroidNavigationComponent,howtomakeactionBartransparentandmakelayoutfullscreeninsingleFragment?【发布时间】:2020-04-2402:37:29【问题描述】:我将Google推... 查看详情

「android高级开发」10年老程序员经验谈:navigation入门详解(代码片段)

...oidJetpack,在Jetpack里有一种管理fragment的新架构模式,那就是navigation.字面意思是导航,但是除了做APP引导页面以外.也可以使用在App主页分tab的情况..甚至可以一个功能模块就一个activity大部分页面UI都使用fragment来实现,而navigation就成... 查看详情

官方架构组件navigation管理fragment框架(代码片段)

Android官方推荐架构组件Navigation让单Activity应用成为首选架构,更好的管理Fragment框架Navigation目前仅AndroidStudio3.2以上版本支持,如果您的版本不足3.2,下载AndroidStudio3.2以上版本。快速开发组件可单独使用,也可以同时工作,当使... 查看详情

android解决xxxlayoutleaked使用navigation踩坑xml内存泄漏(代码片段)

Android解决XXXLayoutleaked使用Navigation踩坑XML内存泄漏报错日志排查过程泄漏原因解决方案最近维护一个项目,一个内存泄漏的的原因查了很久,这里记录一下。文章开始建议简单看一下排查过程和错误原因,再去看解决... 查看详情

android使用bottomnavigationview和novigation组件实现底部导航功能(代码片段)

效果图如下:实现步骤:在工作之前添加所需的相关依赖,切记这个一定不要忘了implementation'androidx.navigation:navigation-fragment:2.2.2'implementation'androidx.navigation:navigation-ui:2.2.2'一、首先做准备工作,创建4个Frag 查看详情

在新的 Navigation Drawer Activity 模板中使用 onNavigationItemSelected 在 Fragments 之间切换(Android Studio 1.4 及更

】在新的NavigationDrawerActivity模板中使用onNavigationItemSelected在Fragments之间切换(AndroidStudio1.4及更高版本)【英文标题】:SwitchbetweenFragmentswithonNavigationItemSelectedinnewNavigationDrawerActivitytemplate(AndroidStudio1.4onward)【发布时间】:2 查看详情