Kur*_*chy 8 android android-jetpack-compose android-jetpack-compose-text
在视图世界中,我们可以使用@tools:sample/*资源来获取示例文本,例如full_names、first_names、cities等dates。
据我所知,Android Studio 布局编辑器使用了这些注释,以便能够在编辑器上查看模拟数据。
在 Compose 世界中没有 xml,因此也没有@tools:sample/*.
Android Studio 有什么办法仍然可以在函数中使用这些示例测试吗@Composable?或者还有其他内置的 Compose 解决方案吗?
有几种解决方案。您可以使用 @PreviewParameter 或简单地在预览可组合项中编写代码来生成所需的数据。就我个人而言,我从不使用预览模式,如果使用,我可能只会在其中编写自定义代码来创建所需的数据。
@预览参数:
您可以使用@PreviewParameter注释为预览创建模拟数据。这是一篇关于如何执行此操作的文章。
https://medium.com/snapp-mobile/sample-data-in-compose-previews-bec32b62370f
另外,请参阅这篇文章:
注意:您只能在每个可组合函数上使用@PreviewParameter。有点让它毫无用处。
自定义代码:
@Preview
@Composable
fun MyList() {
Column() {
repeat(5) {
Text("Number: " + it.toString())
}
}
}
Run Code Online (Sandbox Code Playgroud)
在此示例中,我仅显示一个文本可组合项。但您可以将其替换为您自己的自定义可组合项,并传入所有参数的自定义数据。
生成各种自定义数据(例如图像、名称、文本、数字等)的更高级解决方案是从后端 API 检索数据。您可以使用 Wirespec。它提供 JSON 数据,并且已经有许多内置数据类型:
例如,下面是一个提供模拟天气数据的 API:
https://api.wirespec.dev/wirespec/weather/getweather
这是生成数据的 API:
https://wirespec.dev/Wirespec/projects/apis/Weather/apis/getWeather
这是生成随机书籍列表的一个: https://api.wirespec.dev/wirespec/books/getbooks https://wirespec.dev/Wirespec/projects/apis/Books/apis/getBooks
您可以在 Wirespec 上创建自己的自定义数据源。
| 归档时间: |
|
| 查看次数: |
1448 次 |
| 最近记录: |