diff --git a/app-compose/src/main/java/com/yinuo/safetywatcher/MainActivity.kt b/app-compose/src/main/java/com/yinuo/safetywatcher/MainActivity.kt index dd1b0c1..f3dab1f 100644 --- a/app-compose/src/main/java/com/yinuo/safetywatcher/MainActivity.kt +++ b/app-compose/src/main/java/com/yinuo/safetywatcher/MainActivity.kt @@ -44,16 +44,14 @@ class MainActivity : ComponentActivity() { private fun addBackListener() { onBackPressedDispatcher.addCallback(object : OnBackPressedCallback(true) { override fun handleOnBackPressed() { - if (NavigationUtil.backAndReturnsIsLastPage()) { - //是主页 - if (System.currentTimeMillis() - exitTime > 2000) { - Toast.makeText(this@MainActivity, "再点一次退出!", Toast.LENGTH_SHORT) - .show() - exitTime = System.currentTimeMillis() - } else { - finish() - overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out) - } + //是主页 + if (System.currentTimeMillis() - exitTime > 2000) { + Toast.makeText(this@MainActivity, "再点一次退出!", Toast.LENGTH_SHORT) + .show() + exitTime = System.currentTimeMillis() + } else { + finish() + overridePendingTransition(android.R.anim.fade_in, android.R.anim.fade_out) } } }) diff --git a/app-compose/src/main/java/com/yinuo/safetywatcher/navi/NavigationUtil.kt b/app-compose/src/main/java/com/yinuo/safetywatcher/navi/NavigationUtil.kt index 51320df..323ebe3 100644 --- a/app-compose/src/main/java/com/yinuo/safetywatcher/navi/NavigationUtil.kt +++ b/app-compose/src/main/java/com/yinuo/safetywatcher/navi/NavigationUtil.kt @@ -13,8 +13,6 @@ import androidx.navigation.* * @CreateDate: 2021/8/27 10:06 */ object NavigationUtil { - var currentScreen: ModelPath? by mutableStateOf(ModelPath.Home) - val navList = mutableStateListOf(currentScreen) @SuppressLint("StaticFieldLeak") lateinit var navHostController: NavHostController @@ -23,18 +21,14 @@ object NavigationUtil { * 跳转到某个页面 */ fun to(screenName: ModelPath) { - currentScreen = screenName navHostController.navigate(screenName.route) - navList.add(screenName) } /** * 跳转到某个页面带参数 */ fun toBundle(screenName: ModelPath, bundle: Bundle) { - currentScreen = screenName navHostController.navigate(screenName.route, bundle) - navList.add(screenName) } private fun NavController.navigate( @@ -56,19 +50,4 @@ object NavigationUtil { navigate(route, navOptions, navigatorExtras) } } - - /** - * 返回到上一页 - */ - fun backAndReturnsIsLastPage(): Boolean { - return if (navList.size == 1) { - //当前是最后一页了,返回true - true - } else { - navList.removeLast() - currentScreen = navList.last() - navHostController.navigateUp() - false - } - } }