android - Jetpack Compose 中的自定义形状尺寸

标签 android material-ui android-jetpack-compose

有没有办法使用 Kotlin 扩展在 Jetpack Compose 中添加您自己的形状大小?

Jetpack Compose 中的默认 Shapes 类实现:

val Shapes = Shapes(
   small = RoundedCornerShape(4.dp),
   medium = RoundedCornerShape(4.dp),
   large = RoundedCornerShape(0.dp)
)

这就是我尝试添加新形状尺寸的方法:

val Shapes.ExtraLarge: CornerBasedShape
get() = RoundedCornerShape(16.dp)

但是我收到Receiver参数从未使用警告,并且无法在我的可组合项中使用新大小。感谢您的建议!

最佳答案

您需要为顶级可组合扩展函数添加@get

@get:Composable
val Shapes.ExtraLarge : CornerBasedShape
    get() = RoundedCornerShape(16.dp)

但是,如果您发现自己多次执行此操作,则表明您需要开始定义自定义设计系统,在其中可以定义对您的业务/组织具有逻辑意义的属性,例如颜色和形状。

https://developer.android.com/jetpack/compose/themes/custom

关于android - Jetpack Compose 中的自定义形状尺寸,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/72828309/

相关文章:

android - Android 中的基本线程

javascript - 在 touchstart 上播放音频

reactjs - 增强react-select到material-ui的布局集成

android - 如何在 Android Jetpack Compose 中向 Card 对象添加图像背景?

android - 使用 Intent 和 ActivityResultContracts 选择并提取联系人详细信息

android - 调用独立原生库中的原生库方法

java - 如何使用 Java 在 Android Studio 中使用 dataType(String、Integer、boolean)创建枚举类型?

javascript - 如何将material-ui Snackbar实现为全局函数?

reactjs - 使用 Material UI makeStyles 时输入的 props

android - 在 Jetpack Compose 中使用 NavHostFragment