Jetpack撰写预览未显示在谷歌拉力赛样本应用程序的一个组件



我正在尝试预览可组合的RallyAlertDialog,这是来自谷歌的Rally样本中使用的组件之一。我想预览的代码如下:

@Composable
fun RallyAlertDialog(
onDismiss: () -> Unit,
bodyText: String,
buttonText: String
) {
RallyDialogThemeOverlay {
AlertDialog(
onDismissRequest = onDismiss,
text = { Text(bodyText) },
buttons = {
Column {
Divider(
Modifier.padding(horizontal = 12.dp),
color = MaterialTheme.colors.onSurface.copy(alpha = 0.2f)
)
TextButton(
onClick = onDismiss,
shape = RectangleShape,
contentPadding = PaddingValues(16.dp),
modifier = Modifier.fillMaxWidth()
) {
Text(buttonText)
}
}
}
)
}
}

可组合的RallyDialogThemeOverlay(content: @Composable () ->Unit)在另一个kotlin文件RallyTheme中定义。

我使用的@Preview的代码如下:

@Preview(showBackground = true)
@Composable
fun PreviewRallyAlertDialog() {
val alertMessage = "Heads up, you've used up 90% of your Shopping budget for this month."
val buttonText = "Dismiss".uppercase(Locale.getDefault())
RallyAlertDialog(
onDismiss = { /*TODO*/ },
bodyText = alertMessage,
buttonText = buttonText
)
}

既然我不能预览,没有错误,我做错了什么?

感谢

现在不支持预览对话框。参见https://issuetracker.google.com/issues/186502047。

更新:支持Android Studio Chipmunk Canary 5.

相关内容

最新更新