Skip to content

Commit 8a024c5

Browse files
committed
Refactor: 중복 네비게이션 방지를 위한 로직 추가
1 parent e4d499e commit 8a024c5

1 file changed

Lines changed: 8 additions & 3 deletions

File tree

app/src/main/java/com/threegap/bitnagil/navigation/home/HomeBottomNavigationBar.kt

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@ fun HomeBottomNavigationBar(
3030
navController: NavController,
3131
) {
3232
val navBackStackEntry by navController.currentBackStackEntryAsState()
33+
val currentRoute = navBackStackEntry?.destination?.route
3334

3435
Column {
3536
HorizontalDivider(
@@ -52,11 +53,15 @@ fun HomeBottomNavigationBar(
5253
icon = homeRoute.icon,
5354
title = homeRoute.title,
5455
onClick = {
55-
navController.navigate(homeRoute.route) {
56-
popUpTo(0) { inclusive = true }
56+
if (currentRoute != homeRoute.route) {
57+
navController.navigate(homeRoute.route) {
58+
popUpTo(0) { inclusive = true }
59+
launchSingleTop = true
60+
restoreState = true
61+
}
5762
}
5863
},
59-
selected = navBackStackEntry?.destination?.route == homeRoute.route,
64+
selected = currentRoute == homeRoute.route,
6065
)
6166
}
6267
}

0 commit comments

Comments
 (0)