Optimize CrystalCard, reduce compose allocation
This commit is contained in:
1 parent
f9ed777c7f
commit
d72a44b9f2
1 file changed
+10
-2
@@ -5,8 +5,16 @@ import androidx.compose.foundation.layout.ColumnScope
|
||||
import androidx.compose.material3.CardDefaults
|
||||
import androidx.compose.material3.OutlinedCard
|
||||
import androidx.compose.runtime.Composable
|
||||
import androidx.compose.runtime.remember
|
||||
import androidx.compose.ui.Modifier
|
||||
import androidx.compose.ui.graphics.Color
|
||||
import androidx.compose.ui.graphics.SolidColor
|
||||
|
||||
@Composable
|
||||
private fun crystalCardBorder(): BorderStroke {
|
||||
val originBorder = CardDefaults.outlinedCardBorder()
|
||||
return remember { originBorder.copy(brush = SolidColor(Color.Transparent)) }
|
||||
}
|
||||
|
||||
@Composable
|
||||
fun CrystalCard(
|
||||
@@ -16,7 +24,7 @@ fun CrystalCard(
|
||||
) = OutlinedCard(
|
||||
onClick = onClick,
|
||||
modifier = modifier,
|
||||
border = BorderStroke(CardDefaults.outlinedCardBorder().width, Color.Transparent),
|
||||
border = crystalCardBorder(),
|
||||
content = content,
|
||||
)
|
||||
|
||||
@@ -26,6 +34,6 @@ fun CrystalCard(
|
||||
content: @Composable ColumnScope.() -> Unit,
|
||||
) = OutlinedCard(
|
||||
modifier = modifier,
|
||||
border = BorderStroke(CardDefaults.outlinedCardBorder().width, Color.Transparent),
|
||||
border = crystalCardBorder(),
|
||||
content = content,
|
||||
)
|
||||
Reference in new issue
Block a user