refactor: 返回图标从 Canvas 手绘替换为 Material Icons ChevronLeft
This commit is contained in:
parent
6b15c4b88b
commit
a5a4173cc2
@ -1,6 +1,5 @@
|
|||||||
package plus.rua.project.ui
|
package plus.rua.project.ui
|
||||||
|
|
||||||
import androidx.compose.foundation.Canvas
|
|
||||||
import androidx.compose.foundation.layout.Column
|
import androidx.compose.foundation.layout.Column
|
||||||
import androidx.compose.foundation.layout.Spacer
|
import androidx.compose.foundation.layout.Spacer
|
||||||
import androidx.compose.foundation.layout.fillMaxSize
|
import androidx.compose.foundation.layout.fillMaxSize
|
||||||
@ -8,7 +7,10 @@ import androidx.compose.foundation.layout.height
|
|||||||
import androidx.compose.foundation.layout.padding
|
import androidx.compose.foundation.layout.padding
|
||||||
import androidx.compose.foundation.layout.size
|
import androidx.compose.foundation.layout.size
|
||||||
import androidx.compose.foundation.shape.RoundedCornerShape
|
import androidx.compose.foundation.shape.RoundedCornerShape
|
||||||
|
import androidx.compose.material.icons.Icons
|
||||||
|
import androidx.compose.material.icons.filled.ChevronLeft
|
||||||
import androidx.compose.material3.ExperimentalMaterial3Api
|
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||||
|
import androidx.compose.material3.Icon
|
||||||
import androidx.compose.material3.IconButton
|
import androidx.compose.material3.IconButton
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.material3.Scaffold
|
import androidx.compose.material3.Scaffold
|
||||||
@ -20,8 +22,6 @@ import androidx.compose.runtime.remember
|
|||||||
import androidx.compose.ui.Alignment
|
import androidx.compose.ui.Alignment
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.draw.clip
|
import androidx.compose.ui.draw.clip
|
||||||
import androidx.compose.ui.geometry.Offset
|
|
||||||
import androidx.compose.ui.graphics.StrokeCap
|
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
import com.github.panpf.sketch.AsyncImage
|
import com.github.panpf.sketch.AsyncImage
|
||||||
import plus.rua.project.AppInfo
|
import plus.rua.project.AppInfo
|
||||||
@ -48,24 +48,10 @@ fun AboutScreen(
|
|||||||
title = { Text("关于鸭鸭日历") },
|
title = { Text("关于鸭鸭日历") },
|
||||||
navigationIcon = {
|
navigationIcon = {
|
||||||
IconButton(onClick = onBack) {
|
IconButton(onClick = onBack) {
|
||||||
val arrowColor = MaterialTheme.colorScheme.onSurface
|
Icon(
|
||||||
Canvas(modifier = Modifier.size(24.dp)) {
|
imageVector = Icons.Filled.ChevronLeft,
|
||||||
val strokeWidth = 2.dp.toPx()
|
contentDescription = "返回"
|
||||||
drawLine(
|
)
|
||||||
color = arrowColor,
|
|
||||||
start = Offset(size.width * 0.75f, size.height * 0.15f),
|
|
||||||
end = Offset(size.width * 0.25f, size.height * 0.5f),
|
|
||||||
strokeWidth = strokeWidth,
|
|
||||||
cap = StrokeCap.Round
|
|
||||||
)
|
|
||||||
drawLine(
|
|
||||||
color = arrowColor,
|
|
||||||
start = Offset(size.width * 0.25f, size.height * 0.5f),
|
|
||||||
end = Offset(size.width * 0.75f, size.height * 0.85f),
|
|
||||||
strokeWidth = strokeWidth,
|
|
||||||
cap = StrokeCap.Round
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|||||||
@ -37,6 +37,7 @@ import androidx.compose.material3.SmallFloatingActionButton
|
|||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.material3.OutlinedTextField
|
import androidx.compose.material3.OutlinedTextField
|
||||||
import androidx.compose.material.icons.Icons
|
import androidx.compose.material.icons.Icons
|
||||||
|
import androidx.compose.material.icons.filled.ChevronLeft
|
||||||
import androidx.compose.material.icons.filled.Add
|
import androidx.compose.material.icons.filled.Add
|
||||||
import androidx.compose.material.icons.filled.Refresh
|
import androidx.compose.material.icons.filled.Refresh
|
||||||
import androidx.compose.material3.Icon
|
import androidx.compose.material3.Icon
|
||||||
@ -172,7 +173,10 @@ fun DateCheckerScreen(onBack: () -> Unit, modifier: Modifier = Modifier) {
|
|||||||
},
|
},
|
||||||
navigationIcon = {
|
navigationIcon = {
|
||||||
IconButton(onClick = onBack) {
|
IconButton(onClick = onBack) {
|
||||||
BackArrowIcon()
|
Icon(
|
||||||
|
imageVector = Icons.Filled.ChevronLeft,
|
||||||
|
contentDescription = "返回"
|
||||||
|
)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
colors = TopAppBarDefaults.topAppBarColors(
|
colors = TopAppBarDefaults.topAppBarColors(
|
||||||
@ -648,28 +652,6 @@ private fun ExpiryCard(
|
|||||||
|
|
||||||
// region Icons
|
// region Icons
|
||||||
|
|
||||||
@Composable
|
|
||||||
private fun BackArrowIcon(modifier: Modifier = Modifier) {
|
|
||||||
val color = MaterialTheme.colorScheme.onSurface
|
|
||||||
androidx.compose.foundation.Canvas(modifier = modifier.size(24.dp)) {
|
|
||||||
val strokeWidth = 2.dp.toPx()
|
|
||||||
drawLine(
|
|
||||||
color = color,
|
|
||||||
start = Offset(size.width * 0.75f, size.height * 0.15f),
|
|
||||||
end = Offset(size.width * 0.25f, size.height * 0.5f),
|
|
||||||
strokeWidth = strokeWidth,
|
|
||||||
cap = StrokeCap.Round
|
|
||||||
)
|
|
||||||
drawLine(
|
|
||||||
color = color,
|
|
||||||
start = Offset(size.width * 0.25f, size.height * 0.5f),
|
|
||||||
end = Offset(size.width * 0.75f, size.height * 0.85f),
|
|
||||||
strokeWidth = strokeWidth,
|
|
||||||
cap = StrokeCap.Round
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
private fun CalendarIcon(color: Color, modifier: Modifier = Modifier) {
|
private fun CalendarIcon(color: Color, modifier: Modifier = Modifier) {
|
||||||
androidx.compose.foundation.Canvas(modifier = modifier.size(24.dp)) {
|
androidx.compose.foundation.Canvas(modifier = modifier.size(24.dp)) {
|
||||||
|
|||||||
@ -1,16 +1,17 @@
|
|||||||
package plus.rua.project.ui
|
package plus.rua.project.ui
|
||||||
|
|
||||||
import androidx.compose.foundation.Canvas
|
|
||||||
import androidx.compose.foundation.layout.Column
|
import androidx.compose.foundation.layout.Column
|
||||||
import androidx.compose.foundation.layout.fillMaxSize
|
import androidx.compose.foundation.layout.fillMaxSize
|
||||||
import androidx.compose.foundation.layout.padding
|
import androidx.compose.foundation.layout.padding
|
||||||
import androidx.compose.foundation.layout.size
|
|
||||||
import androidx.compose.foundation.lazy.LazyColumn
|
import androidx.compose.foundation.lazy.LazyColumn
|
||||||
import androidx.compose.foundation.lazy.items
|
import androidx.compose.foundation.lazy.items
|
||||||
|
import androidx.compose.material.icons.Icons
|
||||||
|
import androidx.compose.material.icons.filled.ChevronLeft
|
||||||
import androidx.compose.material3.Card
|
import androidx.compose.material3.Card
|
||||||
import androidx.compose.material3.CardDefaults
|
import androidx.compose.material3.CardDefaults
|
||||||
import androidx.compose.material3.ExperimentalMaterial3Api
|
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||||
import androidx.compose.material3.HorizontalDivider
|
import androidx.compose.material3.HorizontalDivider
|
||||||
|
import androidx.compose.material3.Icon
|
||||||
import androidx.compose.material3.IconButton
|
import androidx.compose.material3.IconButton
|
||||||
import androidx.compose.material3.ListItem
|
import androidx.compose.material3.ListItem
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
@ -19,8 +20,6 @@ import androidx.compose.material3.Text
|
|||||||
import androidx.compose.material3.TopAppBar
|
import androidx.compose.material3.TopAppBar
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.geometry.Offset
|
|
||||||
import androidx.compose.ui.graphics.StrokeCap
|
|
||||||
import androidx.compose.ui.unit.dp
|
import androidx.compose.ui.unit.dp
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -41,24 +40,10 @@ fun LicensesScreen(
|
|||||||
title = { Text("开放源代码许可") },
|
title = { Text("开放源代码许可") },
|
||||||
navigationIcon = {
|
navigationIcon = {
|
||||||
IconButton(onClick = onBack) {
|
IconButton(onClick = onBack) {
|
||||||
val arrowColor = MaterialTheme.colorScheme.onSurface
|
Icon(
|
||||||
Canvas(modifier = Modifier.size(24.dp)) {
|
imageVector = Icons.Filled.ChevronLeft,
|
||||||
val strokeWidth = 2.dp.toPx()
|
contentDescription = "返回"
|
||||||
drawLine(
|
)
|
||||||
color = arrowColor,
|
|
||||||
start = Offset(size.width * 0.75f, size.height * 0.15f),
|
|
||||||
end = Offset(size.width * 0.25f, size.height * 0.5f),
|
|
||||||
strokeWidth = strokeWidth,
|
|
||||||
cap = StrokeCap.Round
|
|
||||||
)
|
|
||||||
drawLine(
|
|
||||||
color = arrowColor,
|
|
||||||
start = Offset(size.width * 0.25f, size.height * 0.5f),
|
|
||||||
end = Offset(size.width * 0.75f, size.height * 0.85f),
|
|
||||||
strokeWidth = strokeWidth,
|
|
||||||
cap = StrokeCap.Round
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|||||||
@ -1,18 +1,17 @@
|
|||||||
package plus.rua.project.ui
|
package plus.rua.project.ui
|
||||||
|
|
||||||
import androidx.compose.foundation.Canvas
|
|
||||||
import androidx.compose.foundation.clickable
|
import androidx.compose.foundation.clickable
|
||||||
import androidx.compose.foundation.layout.Column
|
import androidx.compose.foundation.layout.Column
|
||||||
import androidx.compose.foundation.layout.Spacer
|
|
||||||
import androidx.compose.foundation.layout.fillMaxSize
|
import androidx.compose.foundation.layout.fillMaxSize
|
||||||
import androidx.compose.foundation.layout.fillMaxWidth
|
import androidx.compose.foundation.layout.fillMaxWidth
|
||||||
import androidx.compose.foundation.layout.height
|
|
||||||
import androidx.compose.foundation.layout.padding
|
import androidx.compose.foundation.layout.padding
|
||||||
import androidx.compose.foundation.layout.size
|
|
||||||
import androidx.compose.foundation.shape.RoundedCornerShape
|
import androidx.compose.foundation.shape.RoundedCornerShape
|
||||||
|
import androidx.compose.material.icons.Icons
|
||||||
|
import androidx.compose.material.icons.filled.ChevronLeft
|
||||||
import androidx.compose.material3.Card
|
import androidx.compose.material3.Card
|
||||||
import androidx.compose.material3.CardDefaults
|
import androidx.compose.material3.CardDefaults
|
||||||
import androidx.compose.material3.ExperimentalMaterial3Api
|
import androidx.compose.material3.ExperimentalMaterial3Api
|
||||||
|
import androidx.compose.material3.Icon
|
||||||
import androidx.compose.material3.IconButton
|
import androidx.compose.material3.IconButton
|
||||||
import androidx.compose.material3.MaterialTheme
|
import androidx.compose.material3.MaterialTheme
|
||||||
import androidx.compose.material3.Scaffold
|
import androidx.compose.material3.Scaffold
|
||||||
@ -20,8 +19,6 @@ import androidx.compose.material3.Text
|
|||||||
import androidx.compose.material3.TopAppBar
|
import androidx.compose.material3.TopAppBar
|
||||||
import androidx.compose.runtime.Composable
|
import androidx.compose.runtime.Composable
|
||||||
import androidx.compose.ui.Modifier
|
import androidx.compose.ui.Modifier
|
||||||
import androidx.compose.ui.geometry.Offset
|
|
||||||
import androidx.compose.ui.graphics.StrokeCap
|
|
||||||
import androidx.compose.ui.platform.testTag
|
import androidx.compose.ui.platform.testTag
|
||||||
import androidx.compose.ui.semantics.semantics
|
import androidx.compose.ui.semantics.semantics
|
||||||
import androidx.compose.ui.semantics.testTagsAsResourceId
|
import androidx.compose.ui.semantics.testTagsAsResourceId
|
||||||
@ -48,24 +45,10 @@ fun ToolsScreen(
|
|||||||
title = { Text("工具") },
|
title = { Text("工具") },
|
||||||
navigationIcon = {
|
navigationIcon = {
|
||||||
IconButton(onClick = onBack) {
|
IconButton(onClick = onBack) {
|
||||||
val arrowColor = MaterialTheme.colorScheme.onSurface
|
Icon(
|
||||||
Canvas(modifier = Modifier.size(24.dp)) {
|
imageVector = Icons.Filled.ChevronLeft,
|
||||||
val strokeWidth = 2.dp.toPx()
|
contentDescription = "返回"
|
||||||
drawLine(
|
)
|
||||||
color = arrowColor,
|
|
||||||
start = Offset(size.width * 0.75f, size.height * 0.15f),
|
|
||||||
end = Offset(size.width * 0.25f, size.height * 0.5f),
|
|
||||||
strokeWidth = strokeWidth,
|
|
||||||
cap = StrokeCap.Round
|
|
||||||
)
|
|
||||||
drawLine(
|
|
||||||
color = arrowColor,
|
|
||||||
start = Offset(size.width * 0.25f, size.height * 0.5f),
|
|
||||||
end = Offset(size.width * 0.75f, size.height * 0.85f),
|
|
||||||
strokeWidth = strokeWidth,
|
|
||||||
cap = StrokeCap.Round
|
|
||||||
)
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user