问题标签 [android-jetpack-compose-preview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
501 浏览

android - Jetpack Compose 中的模糊修改器在预览中不起作用

我正在尝试将 Jetpack Compose 的 Modifier.blur 功能用于工作项目,但它似乎在预览中没有做任何事情。我这样使用它:

屏幕内容一点也不模糊。我什至尝试对框中的单个可组合项应用模糊,这也不会改变预览。我在这里错过了什么吗?

0 投票
2 回答
76 浏览

android - Jetpack Compose - 关于预览 widthDp 和 heightDp

什么是widthDpheightDp作为@Preview参数?

【我的环境】</p>

  • Android Studio 北极狐 | 2020.3.1 Patch3 构建于 2021 年 10 月 1 日
  • 摇篮:7.0.2
  • AGP:7.0.3
  • androidx.compose.ui:ui-tooling-preview:1.0.1

这是我的代码。

预览如下。
在此处输入图像描述

但我预计在下面。
在此处输入图像描述

似乎盒子尺寸比我预期的要大。有人解释吗?

0 投票
0 回答
73 浏览

android-jetpack-compose - 我如何模拟视图模型以使用撰写预览?

我有一个使用刀柄注入 viewmModel 的 MainScreen 组合。

问题是我不能在预览中使用它,因为不会使用 hilt 生成 viewModel

我该如何解决这个问题,以便我可以使用预览?

错误是:

0 投票
0 回答
18 浏览

android - 使用 Jetpack Compose 在预览中跳过组件的渲染

我正在使用 GlideImage 从带有 Jetpack compose 的 URL 加载图像。出于某种原因,Glide Image 在@Preview 中为一些缺失的初始化抛出了 NPE。

作为一种解决方法,我计划创建一个 Wrapper 并在预览期间渲染一个相同尺寸的框而不是图像。

在传统的视图系统中,我们可以isInEditMode()在预览中跳过渲染逻辑。有没有办法可以检查可组合项是否在预览下呈现?

0 投票
1 回答
62 浏览

android-studio - 为什么Android Studio Kotlin Compose Template 在应用程序运行时显示文本错误?

我使用新的 Compose 功能(官方文档)从 Android Studio 模板构建了一个应用程序。

预览如下所示:

Android 撰写预览

但是,当我运行应用程序时,它看起来像这样(文本要小得多并且不在视图中居中):

Android Compose 运行示例

这不是编辑器中 UI 的实际预览吗?有没有办法在 Android Studio 中真正预览 Compose?

0 投票
1 回答
79 浏览

android - AlertDialog 的预览在 Jetpack Compose 中不起作用

问题描述

我正在尝试查看我AlertDialog在撰写中的预览,但我没有得到它,即使它没有显示任何错误,预览也不会呈现它。我确定问题仅出在这个可组合功能上,因为我可以正常看到其他功能的预览。

警告

我收到了这个警告,但我不太明白这是一个没有呈现我的对话框的问题。

在此处输入图像描述

在运行时正常工作

我的对话框在执行环境中正常出现,这让我相信这确实是预览功能的问题:

在此处输入图像描述

我的代码

编写相关版本

我正在使用build.gradle.kts文件,并引用我的撰写相关版本,如下所示:

呈现对话框的组件

预览功能

预览结果

在此处输入图像描述

我的尝试失败了

我认为对话框可能无法呈现,因为它不够大,无法在屏幕上显示。所以我决定把它放在一个Box最大屏幕尺寸的里面,但它仍然不起作用。

尝试失败结果

白屏预览

0 投票
1 回答
62 浏览

android - Jetpack Compose 预览:无背景,无系统 UI

我正在使用 Jetpack Compose 和 Material 3 引导一个新应用程序。我最近使用这种配置创建了一堆新应用程序,所以这个问题让我陷入困境:我无法让 IDE 的组合预览显示背景或系统 UI。编译后的应用程序效果很好。

我尝试使用不久前创建的 Jetpack Compose + Material 3 构建此示例应用程序,并且所有预览在同一版本的 IDE 中都很好。我还尝试降级我的库以匹配该示例应用程序的库。没运气。示例应用程序有工作预览,我的没有。

我确实在我的 Gradle 脚本中包含了用于调试变体的 compose UI 工具,并且我正在使用调试变体进行预览。

想法?

这是我看到的:

IDE 预览

这就是我生成此屏幕代码示例的方式:

我的主题非常适合材料 3:

这是我正在使用的:

  • Android Studio Bumblebee: 2021.1.1 补丁 1
  • AGP: 7.2.0-alpha05
  • Jetpack Compose: 1.2.0-alpha03(也尝试过 1.1.0)
  • 分级: 7.4
  • 科特林: 1.6.10
  • androidx.compose.material3:material3:1.0.0-alpha05
  • com.google.android.material:material:1.6.0-alpha01
0 投票
0 回答
10 浏览

android-jetpack-compose - Jetpack Compose Preview 在多模块应用程序中失败

我有一个多模块应用程序,我最近开始实施 Jetpack Compose。我定义了一些由不同模块共享的组合。我将它们放在另一个库模块中并导入到相关位置。可组合示例:

一切似乎都很好,除了说可组合物无法构建预览:

在上面的示例中,如果我删除“AppTheme”,预览效果会非常好。

堆栈跟踪:

安卓工作室版本:

  • 大黄蜂 2021.1.1 补丁 2
  • 花栗鼠 2021.2.1 Beta 3
  • 海豚 2021.3.1 金丝雀 5

撰写版本: 1.1.1