|
|
|
@ -39,10 +39,13 @@ import androidx.compose.material3.Surface
|
|
|
|
|
import androidx.compose.material3.Text
|
|
|
|
|
import androidx.compose.material3.windowsizeclass.WindowSizeClass
|
|
|
|
|
import androidx.compose.material3.windowsizeclass.WindowWidthSizeClass
|
|
|
|
|
import androidx.compose.runtime.saveable.rememberSaveable
|
|
|
|
|
import androidx.compose.ui.Modifier
|
|
|
|
|
import androidx.compose.runtime.Composable
|
|
|
|
|
import androidx.compose.runtime.getValue
|
|
|
|
|
import androidx.compose.runtime.mutableStateOf
|
|
|
|
|
import androidx.compose.runtime.remember
|
|
|
|
|
import androidx.compose.ui.Modifier
|
|
|
|
|
import androidx.compose.runtime.setValue
|
|
|
|
|
import androidx.compose.ui.graphics.Color
|
|
|
|
|
import androidx.compose.ui.res.stringResource
|
|
|
|
|
import androidx.compose.ui.unit.dp
|
|
|
|
@ -155,15 +158,20 @@ private fun NiABottomBar(
|
|
|
|
|
tonalElevation = 0.dp
|
|
|
|
|
) {
|
|
|
|
|
|
|
|
|
|
TOP_LEVEL_DESTINATIONS.forEach { destination ->
|
|
|
|
|
val selected =
|
|
|
|
|
currentDestination?.hierarchy?.any { it.route == destination.route } == true
|
|
|
|
|
var selected by rememberSaveable {
|
|
|
|
|
mutableStateOf(0)
|
|
|
|
|
}
|
|
|
|
|
TOP_LEVEL_DESTINATIONS.forEachIndexed { index, destination ->
|
|
|
|
|
val isSelect = selected == index
|
|
|
|
|
NavigationBarItem(
|
|
|
|
|
selected = selected,
|
|
|
|
|
onClick = { onNavigateToTopLevelDestination(destination) },
|
|
|
|
|
selected = isSelect,
|
|
|
|
|
onClick = {
|
|
|
|
|
selected = index
|
|
|
|
|
onNavigateToTopLevelDestination(destination)
|
|
|
|
|
},
|
|
|
|
|
icon = {
|
|
|
|
|
Icon(
|
|
|
|
|
if (selected) {
|
|
|
|
|
if (isSelect) {
|
|
|
|
|
destination.selectedIcon
|
|
|
|
|
} else {
|
|
|
|
|
destination.unselectedIcon
|
|
|
|
|