[英]How do I disable the composable preview in Android Jetpack Compose?
[英]Reuse a single set of preview annotations in Jetpack Compose across composable functions
在 Jetpack Compose 中迈出第一步,除了一个烦人的问题外,这是非常了不起的。
我有一组不变的预览:正常、黑暗和 RTL:
@Preview(
name = "Normal",
group = "Screen",
showBackground = true
)
@Preview(
name = "Dark",
group = "Screen",
showBackground = true,
uiMode = Configuration.UI_MODE_NIGHT_YES
)
@Preview(
name = "RTL",
group = "Screen",
showBackground = true,
locale = "iw"
)
@Composable
fun JustAComposable() {
...
}
举个例子,我预览了 50 个可组合函数。 我需要复制粘贴这组 50 次,这是绝对不正确的。
注释 inheritance 是被禁止的,所以我的问题是:是否有人找到了在所有可组合函数中重复使用同一组预览的方法?
我能想到的唯一 2 个解决方案是:
我创建了一个功能请求来组成团队,以便能够创建自定义注释并使用我想重用的所有预览来注释注释。
这样我只需要使用我的自定义注释。
可以在Google Issue Tracker中进行跟踪
已接受的功能请求现已实施,从 Android Studio Dolphin 和 Jetpack Compose 1.2.0-beta01 开始可用。
它被称为Multipreview Annotation 。 可以在此处找到有关此功能的更多信息。
要使用此功能,您必须创建自定义注释 class。
@Preview(
name = "small font",
group = "font scales",
fontScale = 0.5f
)
@Preview(
name = "large font",
group = "font scales",
fontScale = 1.5f
)
annotation class FontScalePreviews
现在您可以应用此注释 class。例如:
@FontScalePreviews
@Composable
fun HelloWorldPreview() {
Text("Hello World")
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.