pull/54/head
Saeed Noshadi 3 years ago
parent 5f9d18827f
commit c3d5ae2b2d

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

Loading…
Cancel
Save