我今天开始学习jetpack compose,当我使用NavHost时,我有一个渲染预览问题 java.lang.IllegalStateException: ViewModels creation is not supported in Preview
at androidx.compose.ui.tooling.ComposeViewAdapter$FakeViewModelStoreOwner$1.getViewModelStore(ComposeViewAdapter.kt:709)
at androidx.navigation.compose.NavHostKt.NavHost(N
我正在实现表单控件,带有验证等。我希望只有当用户“模糊”TextField时,换句话说,当字段失去焦点时,才会显示错误消息。在Angular中,我们有状态,我们可以从它出发。如何在Jetpack Compose中侦听失去焦点的状态?
@Composable
fun Screen() {
TextField(
onBlur = {
// P.S. This parameter does not exist
}
)
}
假设我有一个固定大小的矩形,里面有一些文本。由于用户可以从设备上的系统辅助功能设置中更改字体大小,因此字体可能不适合固定大小的矩形。如果发生这种情况,我们会将文本渲染到矩形之外。 AFAIK我应该以某种方式测量文本的宽度(例如),看看它是否适合矩形,如果不适合,则以不同的方式布局组件。 我如何在Jetpack Compose中做到这一点? 因此,对于这段伪代码,如果text不适合Box,我想在它下面布局文本,从而引入一个Column等。 @Composable
fun myView() {
val text = Text("Some text")
Box(modifi
在制作compose中的下拉菜单时,我遇到了一个问题,即我的DropdownMenu将始终按照修饰符中的给定进行fillMaxWidth。我的目标是添加填充,以便它将匹配屏幕的内容,但是添加填充到修饰符不起作用… @Composable
fun PriorityDropDown(
priority: Priority,
onPrioritySelected: (Priority) -> Unit
) {
var expanded by remember { mutableStateOf(false) }
val dropDownIconAngle: F
我有一个多模块应用程序,我最近开始实现Jetpack撰写。我定义了一些可由不同模块共享的可组合性。我把这些放在另一个图书馆模块中,并在相关地方导入。示例可组合:
// Nothing special here, any composable function fails the same way
@Composable
fun AppTheme(content: @Composable () -> Unit) {
val appColors = lightColors(
primary = Blue
)
MaterialTheme(colors =
据推测,现在Jetpack Compose支持Robolectric测试,因为。但是我尝试实现一个非常简单的测试( ,请参阅runClickScenario()),但它对我不起作用。我得到的错误是:
java.util.concurrent.ExecutionException: java.lang.RuntimeException: java.lang.IllegalAccessException: class androidx.test.espresso.base.ThreadPoolExecutorExtractor$2 cannot access a member of class a
如何在jetpack中创建动态选项卡,在我的应用程序中,我需要显示的选项卡数量取决于API响应。但是,当我设置selectedTabIndex值时,我们需要设置TabsRow值,这将导致问题。因为在加载选项卡数据之前,它试图在没有任何选项卡的情况下构建ui。
请帮我解决这个问题,或者引导我用正确的方式去做。
@Composable
fun CustomTab(viewModel: BeatsViewModel) {
var tabIndex by remember { mutableStateOf(0) }
val beats = viewModel.beatsData.obs