Marko Novakovic
03/04/2021, 9:25 PMOwl
on my own to practice Compose
. I have problem with BottomNavigation
and navigation component. code in thread.Marko Novakovic
03/04/2021, 9:25 PMprivate enum class CourseTab(
@StringRes val label: Int,
@DrawableRes val icon: Int,
) {
MyCourses(R.string.my_courses, R.drawable.ic_featured),
Featured(R.string.featured, R.drawable.ic_featured),
Search(R.string.search, R.drawable.ic_search),
}
@Composable
fun Courses() {
BlueTheme {
val navController = rememberNavController()
val tabs = CourseTab.values()
Scaffold(
bottomBar = {
BottomNavigation(modifier = Modifier.navigationBarsPadding()) {
tabs.forEach { tab ->
BottomNavigationItem(
modifier = Modifier.navigationBarsPadding(),
icon = {
Icon(
painter = painterResource(id = tab.icon),
contentDescription = stringResource(id = tab.label),
)
},
label = { Text(text = stringResource(id = tab.label)) },
selected = tab.name == navController.currentBackStackEntry?.arguments?.getString(KEY_ROUTE),
onClick = { navController.navigate(tab.name) },
alwaysShowLabel = false,
selectedContentColor = MaterialTheme.colors.secondary,
unselectedContentColor = LocalContentColor.current,
)
}
}
}
) { innerPadding ->
val modifier = Modifier.padding(innerPadding)
NavHost(
navController = navController,
startDestination = CourseTab.MyCourses.name,
) {
composable(CourseTab.MyCourses.name) { MyCourses(modifier) }
composable(CourseTab.Featured.name) { FeaturedCourses(modifier) }
composable(CourseTab.Search.name) { SearchCourses(modifier) }
}
}
}
}
Marko Novakovic
03/04/2021, 9:26 PMMarko Novakovic
03/04/2021, 9:27 PMOlivier Patry
03/04/2021, 9:38 PMMarko Novakovic
03/04/2021, 9:40 PMnavigate
method with popUpTo
Nikola Drljaca
03/05/2021, 11:42 AMpopUpTo
is inside the lambda, maybe you were looking in the parameters. Other than that maybe just check if you have the proper importMarko Novakovic
03/05/2021, 11:43 AMpopUpTo
is not a parameter 😄 😄 😄Marko Novakovic
03/05/2021, 11:43 AMNikola Drljaca
03/05/2021, 11:44 AM