fix: 初步修复屏幕边距问题&优化三键导航显示效果
This commit is contained in:
parent
3bf982218d
commit
2bcfa9272c
8 changed files with 15 additions and 24 deletions
|
|
@ -31,6 +31,9 @@ class CrashActivity : ComponentActivity() {
|
|||
|
||||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
enableEdgeToEdge()
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
|
||||
window.isNavigationBarContrastEnforced = false
|
||||
}
|
||||
super.onCreate(savedInstanceState)
|
||||
|
||||
val crashLogs = intent.getStringExtra("crash_logs")
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
package cn.super12138.todo.ui.activities
|
||||
|
||||
import android.os.Build
|
||||
import android.os.Bundle
|
||||
import android.view.WindowManager
|
||||
import androidx.activity.ComponentActivity
|
||||
|
|
@ -26,6 +27,9 @@ class MainActivity : ComponentActivity() {
|
|||
override fun onCreate(savedInstanceState: Bundle?) {
|
||||
installSplashScreen()
|
||||
enableEdgeToEdge()
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q) {
|
||||
window.isNavigationBarContrastEnforced = false
|
||||
}
|
||||
super.onCreate(savedInstanceState)
|
||||
setContent {
|
||||
val mainViewModel: MainViewModel = viewModel()
|
||||
|
|
|
|||
|
|
@ -4,9 +4,6 @@ import androidx.compose.foundation.layout.Box
|
|||
import androidx.compose.foundation.layout.PaddingValues
|
||||
import androidx.compose.foundation.layout.RowScope
|
||||
import androidx.compose.foundation.layout.WindowInsets
|
||||
import androidx.compose.foundation.layout.exclude
|
||||
import androidx.compose.foundation.layout.ime
|
||||
import androidx.compose.foundation.layout.safeContent
|
||||
import androidx.compose.material.icons.Icons
|
||||
import androidx.compose.material.icons.automirrored.outlined.ArrowBack
|
||||
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||
|
|
@ -46,7 +43,7 @@ fun LargeTopAppBarScaffold(
|
|||
snackbarHost: @Composable () -> Unit = {},
|
||||
floatingActionButton: @Composable () -> Unit = {},
|
||||
floatingActionButtonPosition: FabPosition = FabPosition.End,
|
||||
contentWindowInsets: WindowInsets = WindowInsets.safeContent.exclude(WindowInsets.ime),
|
||||
contentWindowInsets: WindowInsets = ScaffoldDefaults.contentWindowInsets,
|
||||
content: @Composable (PaddingValues) -> Unit
|
||||
) {
|
||||
val view = LocalView.current
|
||||
|
|
|
|||
|
|
@ -66,13 +66,13 @@ import cn.super12138.todo.utils.VibrationUtils
|
|||
@OptIn(ExperimentalMaterial3Api::class, ExperimentalSharedTransitionApi::class)
|
||||
@Composable
|
||||
fun TodoEditorPage(
|
||||
modifier: Modifier = Modifier,
|
||||
toDo: TodoEntity? = null,
|
||||
onSave: (TodoEntity) -> Unit,
|
||||
onDelete: () -> Unit,
|
||||
onNavigateUp: () -> Unit,
|
||||
sharedTransitionScope: SharedTransitionScope,
|
||||
animatedVisibilityScope: AnimatedVisibilityScope,
|
||||
modifier: Modifier = Modifier
|
||||
animatedVisibilityScope: AnimatedVisibilityScope
|
||||
) {
|
||||
var showExitConfirmDialog by rememberSaveable { mutableStateOf(false) }
|
||||
var showDeleteConfirmDialog by rememberSaveable { mutableStateOf(false) }
|
||||
|
|
|
|||
|
|
@ -11,12 +11,8 @@ import androidx.compose.animation.fadeOut
|
|||
import androidx.compose.animation.shrinkOut
|
||||
import androidx.compose.foundation.layout.Column
|
||||
import androidx.compose.foundation.layout.Row
|
||||
import androidx.compose.foundation.layout.WindowInsets
|
||||
import androidx.compose.foundation.layout.exclude
|
||||
import androidx.compose.foundation.layout.fillMaxSize
|
||||
import androidx.compose.foundation.layout.ime
|
||||
import androidx.compose.foundation.layout.padding
|
||||
import androidx.compose.foundation.layout.safeContent
|
||||
import androidx.compose.foundation.lazy.rememberLazyListState
|
||||
import androidx.compose.material.icons.Icons
|
||||
import androidx.compose.material.icons.outlined.Add
|
||||
|
|
@ -123,7 +119,6 @@ fun MainPage(
|
|||
}
|
||||
}
|
||||
},
|
||||
contentWindowInsets = WindowInsets.safeContent.exclude(WindowInsets.ime),
|
||||
modifier = modifier
|
||||
) { innerPadding ->
|
||||
if (windowSizeClass.windowWidthSizeClass == WindowWidthSizeClass.COMPACT) {
|
||||
|
|
|
|||
|
|
@ -28,6 +28,7 @@ import cn.super12138.todo.ui.pages.main.components.TodoCard
|
|||
@OptIn(ExperimentalSharedTransitionApi::class)
|
||||
@Composable
|
||||
fun ManagerFragment(
|
||||
modifier: Modifier = Modifier,
|
||||
state: LazyListState,
|
||||
list: List<TodoEntity>,
|
||||
onItemClick: (TodoEntity) -> Unit = {},
|
||||
|
|
@ -35,8 +36,7 @@ fun ManagerFragment(
|
|||
onItemChecked: (TodoEntity) -> Unit = {},
|
||||
selectedTodoIds: List<Int>,
|
||||
sharedTransitionScope: SharedTransitionScope,
|
||||
animatedVisibilityScope: AnimatedVisibilityScope,
|
||||
modifier: Modifier = Modifier
|
||||
animatedVisibilityScope: AnimatedVisibilityScope
|
||||
) {
|
||||
val context = LocalContext.current
|
||||
LazyColumnCustomScrollBar(
|
||||
|
|
|
|||
|
|
@ -47,6 +47,7 @@ import cn.super12138.todo.utils.VibrationUtils
|
|||
@OptIn(ExperimentalFoundationApi::class, ExperimentalSharedTransitionApi::class)
|
||||
@Composable
|
||||
fun TodoCard(
|
||||
modifier: Modifier = Modifier,
|
||||
id: Int,
|
||||
content: String,
|
||||
subject: String,
|
||||
|
|
@ -57,8 +58,7 @@ fun TodoCard(
|
|||
onCardLongClick: () -> Unit = {},
|
||||
onChecked: () -> Unit = {},
|
||||
sharedTransitionScope: SharedTransitionScope,
|
||||
animatedVisibilityScope: AnimatedVisibilityScope,
|
||||
modifier: Modifier = Modifier
|
||||
animatedVisibilityScope: AnimatedVisibilityScope
|
||||
) {
|
||||
val view = LocalView.current
|
||||
val context = LocalContext.current
|
||||
|
|
|
|||
|
|
@ -11,11 +11,6 @@ import androidx.compose.animation.scaleIn
|
|||
import androidx.compose.animation.shrinkOut
|
||||
import androidx.compose.animation.togetherWith
|
||||
import androidx.compose.foundation.layout.Row
|
||||
import androidx.compose.foundation.layout.WindowInsets
|
||||
import androidx.compose.foundation.layout.exclude
|
||||
import androidx.compose.foundation.layout.ime
|
||||
import androidx.compose.foundation.layout.safeContent
|
||||
import androidx.compose.foundation.layout.windowInsetsPadding
|
||||
import androidx.compose.material.icons.Icons
|
||||
import androidx.compose.material.icons.outlined.Close
|
||||
import androidx.compose.material.icons.outlined.Delete
|
||||
|
|
@ -117,10 +112,7 @@ fun TodoTopAppBar(
|
|||
).togetherWith(
|
||||
fadeOut(animationSpec = tween(90))
|
||||
)
|
||||
},
|
||||
modifier = Modifier.windowInsetsPadding(
|
||||
WindowInsets.safeContent.exclude(WindowInsets.ime)
|
||||
)
|
||||
}
|
||||
) { inSelectedMode ->
|
||||
if (!inSelectedMode) {
|
||||
IconButton(
|
||||
|
|
|
|||
Loading…
Reference in a new issue