Change screen transition for Main.

This commit is contained in:
Thomas Andres Gomez 2021-05-08 22:18:08 +02:00
parent a33c21a02e
commit e4eeb2d4af

View file

@ -4,7 +4,10 @@ import android.os.Bundle
import androidx.activity.ComponentActivity
import androidx.activity.compose.setContent
import androidx.activity.viewModels
import androidx.compose.animation.AnimatedVisibility
import androidx.compose.animation.Crossfade
import androidx.compose.animation.ExperimentalAnimationApi
import androidx.compose.animation.slideInHorizontally
import androidx.compose.runtime.Composable
import androidx.compose.runtime.getValue
import androidx.compose.runtime.livedata.observeAsState
@ -13,8 +16,8 @@ import com.pixelized.biblib.ui.composable.screen.LoginScreenComposable
import com.pixelized.biblib.ui.composable.screen.MainScreenComposable
import com.pixelized.biblib.ui.composable.screen.SplashScreenComposable
import com.pixelized.biblib.ui.theme.BibLibTheme
import com.pixelized.biblib.ui.viewmodel.navigation.NavigationViewModel
import com.pixelized.biblib.ui.viewmodel.navigation.INavigation.Screen
import com.pixelized.biblib.ui.viewmodel.navigation.NavigationViewModel
class MainActivity : ComponentActivity() {
private val navigationViewModel: NavigationViewModel by viewModels()
@ -36,6 +39,7 @@ class MainActivity : ComponentActivity() {
}
}
@OptIn(ExperimentalAnimationApi::class)
@Composable
fun ContentComposable() {
val navigationViewModel = viewModel<NavigationViewModel>()
@ -45,7 +49,13 @@ fun ContentComposable() {
when (it) {
is Screen.SplashScreen -> SplashScreenComposable()
is Screen.LoginScreen -> LoginScreenComposable()
is Screen.MainScreen -> MainScreenComposable()
is Screen.MainScreen -> AnimatedVisibility(
visible = true,
initiallyVisible = false,
enter = slideInHorizontally(initialOffsetX = { width -> width / 2 })
) {
MainScreenComposable()
}
}
}
}