Android 当导航到composable时,如何隐藏BottomAppBar(带有导航包含)?

Android 当导航到composable时,如何隐藏BottomAppBar(带有导航包含)?,android,kotlin,navigation,android-jetpack-compose,Android,Kotlin,Navigation,Android Jetpack Compose,我有个问题 问题是,当我导航到“添加问题”屏幕时,我不知道如何隐藏底部的应用程序栏 我需要你的帮助 这是我的屏幕和底部的应用程序栏 @Composable fun Navigation() { val navController = rememberNavController() val items = listOf(Screen.Home, Screen.Search, Screen.Notifications, Screen.Profil) Scaffold(

我有个问题

问题是,当我导航到“添加问题”屏幕时,我不知道如何隐藏底部的应用程序栏

我需要你的帮助

这是我的屏幕和底部的应用程序栏

@Composable
fun Navigation() {
    val navController = rememberNavController()
    val items = listOf(Screen.Home, Screen.Search, Screen.Notifications, Screen.Profil)

    Scaffold(
        bottomBar = {
            bottomAppNavigation(navController = navController, items)

        }
    ) {
        Box(modifier = Modifier.padding(it)) {
            ScreenController(navController = navController)
        }

    }
}
这是我的导航主机控制器

@ExperimentalComposeUiApi
@Composable
fun ScreenController(navController: NavHostController) {
    NavHost(navController = navController, startDestination = Screen.Home.route) {
        composable(Screen.Home.route) {
            HomeScreen(navController)
        }
        composable(Screen.Search.route) {
            SearchScreen(navController, it)
        }
        composable(Screen.Notifications.route) {

        }
        composable(Screen.Profil.route) {
            user_profil()
        }
        composable("Ask_question") {
            AskScreen(navController)
        }
    }
}

我认为问题在于,这就像活动和片段一样,我有一个框,可组合屏幕在其中,我的所有页面都在其中。

如果你想隐藏
底部栏,就不要输出它

比如:

Scaffold(
    bottomBar = {
        if (currentRoute != "xxxx") {
            BottomAppBar() {
               //....
            }
        }
    },
其中
currentRoute
为(至少使用导航组件2.4.0-alpha01):


哦好的,但是现在的路线是什么?因为我做了:val currentRoute=navController.currentBackStackEntry?.arguments?.getString(KEY_ROUTE),但它没有worked@Mehdi.ncb我已经更新了答案。同时检查官方文件:你回答了,但是,这是最好的方法吗?例如,当我返回时,我看到底部导航栏从底部出现(小动画-0.2s)。那么,您有没有最好的替代方案?@Mehdi.ncb老实说,我不知道是否有更好的替代方案,但我认为使用当前的API这是一种正确的方法。好的,非常感谢您,您在stackOverflow上帮助了很多人
val navBackStackEntry by navController.currentBackStackEntryAsState()
val currentRoute = navBackStackEntry.destination.route