feat(crash): 崩溃界面适配用户深色模式
This commit is contained in:
parent
b193c285ce
commit
b626c3d1a9
1 changed files with 24 additions and 1 deletions
|
|
@ -5,10 +5,18 @@ import android.os.Bundle
|
|||
import androidx.activity.ComponentActivity
|
||||
import androidx.activity.compose.setContent
|
||||
import androidx.activity.enableEdgeToEdge
|
||||
import androidx.compose.foundation.isSystemInDarkTheme
|
||||
import androidx.compose.foundation.layout.fillMaxSize
|
||||
import androidx.compose.runtime.LaunchedEffect
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.res.stringResource
|
||||
import androidx.core.view.WindowCompat
|
||||
import cn.super12138.todo.R
|
||||
import cn.super12138.todo.constants.GlobalValues
|
||||
import cn.super12138.todo.logic.model.DarkMode
|
||||
import cn.super12138.todo.logic.model.DarkMode.Dark
|
||||
import cn.super12138.todo.logic.model.DarkMode.FollowSystem
|
||||
import cn.super12138.todo.logic.model.DarkMode.Light
|
||||
import cn.super12138.todo.ui.pages.crash.CrashPage
|
||||
import cn.super12138.todo.ui.theme.ToDoTheme
|
||||
import java.text.SimpleDateFormat
|
||||
|
|
@ -51,7 +59,22 @@ class CrashActivity : ComponentActivity() {
|
|||
}.toString()
|
||||
|
||||
setContent {
|
||||
ToDoTheme {
|
||||
val darkMode = DarkMode.fromId(GlobalValues.darkMode)
|
||||
val darkTheme = when (darkMode) {
|
||||
FollowSystem -> isSystemInDarkTheme()
|
||||
Light -> false
|
||||
Dark -> true
|
||||
}
|
||||
// 配置状态栏和底部导航栏的颜色(在用户切换深色模式时)
|
||||
// https://github.com/dn0ne/lotus/blob/master/app/src/main/java/com/dn0ne/player/MainActivity.kt#L266
|
||||
LaunchedEffect(darkMode) {
|
||||
WindowCompat.getInsetsController(window, window.decorView).apply {
|
||||
isAppearanceLightStatusBars = !darkTheme
|
||||
isAppearanceLightNavigationBars = !darkTheme
|
||||
}
|
||||
}
|
||||
|
||||
ToDoTheme(darkTheme = darkTheme) {
|
||||
CrashPage(
|
||||
crashLog = if (crashLogs == null) stringResource(R.string.tip_no_crash_logs) else crashLogFormatted,
|
||||
exitApp = { finishAffinity() },
|
||||
|
|
|
|||
Loading…
Reference in a new issue