调整样式

This commit is contained in:
2024-07-16 10:48:45 +08:00
parent a3fba7d7e9
commit 0b3455c7c4
7 changed files with 65 additions and 14 deletions

View File

@@ -0,0 +1,19 @@
package com.aiosman.riderpro
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.navigationBars
import androidx.compose.runtime.Composable
import androidx.compose.ui.Modifier
import androidx.compose.ui.platform.LocalDensity
@Composable
fun BottomNavigationPlaceholder(){
val navigationBarHeight = with(LocalDensity.current) {
WindowInsets.navigationBars.getBottom(this).toDp()
}
Box(
modifier = Modifier.height(navigationBarHeight)
)
}

View File

@@ -49,6 +49,7 @@ fun CommentsScreen() {
repeat(20) {
CommentsItem()
}
BottomNavigationPlaceholder()
}
}
}

View File

@@ -6,9 +6,12 @@ import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.asPaddingValues
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.navigationBars
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.width
@@ -45,10 +48,13 @@ fun LikePage() {
item {
repeat(20) {
LikeItem()
}
BottomNavigationPlaceholder()
}
}
}
}

View File

@@ -135,22 +135,28 @@ fun NavigationController(navController: NavHostController) {
}
}
composable(route = "MyMessage") {
NotificationsScreen()
}
composable(route = "Comments") {
CommentsScreen()
}
composable(route = "Likes") {
LikePage()
}
composable(route = "Followers") {
Box(
modifier = Modifier.padding(bottom = navigationBarHeight)
) {
NotificationsScreen()
}
}
composable(route = "Comments") {
CommentsScreen()
}
composable(route = "Likes") {
LikePage()
}
composable(route = "Followers") {
FollowerPage()
}
}
composable(route = "NewPost") {
NewPostScreen()

View File

@@ -8,9 +8,12 @@ import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.Row
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.asPaddingValues
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.navigationBars
import androidx.compose.foundation.layout.padding
import androidx.compose.foundation.layout.size
import androidx.compose.foundation.layout.width
@@ -23,6 +26,7 @@ import androidx.compose.ui.Alignment
import androidx.compose.ui.Modifier
import androidx.compose.ui.draw.clip
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.platform.LocalDensity
import androidx.compose.ui.res.painterResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.tooling.preview.Preview
@@ -36,7 +40,7 @@ fun NotificationsScreen() {
val navController = LocalNavController.current
StatusBarMaskLayout(darkIcons = true) {
Column(
modifier = Modifier.fillMaxSize()
modifier = Modifier.fillMaxWidth().weight(1f)
) {
Box(
modifier = Modifier
@@ -83,7 +87,9 @@ fun NotificationsScreen() {
profileImage = R.drawable.default_avatar
)
)
}
BottomNavigationPlaceholder()
}

View File

@@ -25,6 +25,7 @@ import androidx.compose.material3.ExperimentalMaterial3Api
import androidx.compose.material3.ModalBottomSheet
import androidx.compose.material3.Text
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.runtime.getValue
import androidx.compose.runtime.mutableStateOf
import androidx.compose.runtime.remember
@@ -41,12 +42,17 @@ import androidx.compose.ui.res.painterResource
import androidx.compose.ui.text.font.FontWeight
import androidx.compose.ui.tooling.preview.Preview
import androidx.compose.ui.unit.dp
import com.google.accompanist.systemuicontroller.rememberSystemUiController
@Preview
@Composable
fun NewPostScreen() {
val model = NewPostViewModel
val systemUiController = rememberSystemUiController()
LaunchedEffect(Unit) {
systemUiController.setNavigationBarColor(color = Color.Transparent)
}
StatusBarMaskLayout(
darkIcons = true,
) {

View File

@@ -4,16 +4,21 @@ import androidx.compose.foundation.background
import androidx.compose.foundation.layout.Box
import androidx.compose.foundation.layout.Column
import androidx.compose.foundation.layout.ColumnScope
import androidx.compose.foundation.layout.ExperimentalLayoutApi
import androidx.compose.foundation.layout.Spacer
import androidx.compose.foundation.layout.WindowInsets
import androidx.compose.foundation.layout.areNavigationBarsVisible
import androidx.compose.foundation.layout.asPaddingValues
import androidx.compose.foundation.layout.fillMaxSize
import androidx.compose.foundation.layout.fillMaxWidth
import androidx.compose.foundation.layout.height
import androidx.compose.foundation.layout.navigationBars
import androidx.compose.foundation.layout.systemBars
import androidx.compose.runtime.Composable
import androidx.compose.runtime.LaunchedEffect
import androidx.compose.ui.Modifier
import androidx.compose.ui.graphics.Color
import androidx.compose.ui.unit.dp
import com.google.accompanist.systemuicontroller.rememberSystemUiController
@Composable
@@ -37,11 +42,13 @@ fun StatusBarMaskLayout(
) {
val paddingValues = WindowInsets.systemBars.asPaddingValues()
val systemUiController = rememberSystemUiController()
val navigationBarPaddings =
WindowInsets.navigationBars.asPaddingValues().calculateBottomPadding()
LaunchedEffect(Unit) {
systemUiController.setStatusBarColor(Color.Transparent, darkIcons = darkIcons)
}
Column(
modifier = modifier
modifier = modifier.fillMaxSize()
) {
Box(
modifier = Modifier