9得票2回答
组合 - NavHost 重组多次

在从Navhost导航时,我发现可组合屏幕正在多次重新组合。因此,我的ViewModel也多次调用API数据源。 @Composable fun MainView() { val scaffoldState = rememberScaffoldState(rememberDrawer...

9得票2回答
Jetpack Compose 弧形/圆形进度条动画(如何重新启动动画)

如何创建类似于这样的圆弧进度条动画 目前我已经使用Canvas绘制了一条弧线,并使用animateFloatAsState API为进度条添加了动画效果。但第二张图片不是我期望的。 [] // e.g. oldScore = 100f newScore = 350f // Su...

8得票1回答
Jetpack Compose 惰性列单选

我从服务器获取数据并在列表中显示,每个项目都可以通过一次单击选择以显示按钮,但我无法关闭它,只能打开它。 这是列表类的项目。 data class Task( val deviceName: String, val deviceId: String, var sel...

8得票1回答
Jetpack Compose的TextField在输入新字符时未更新

我遵循开发者网站上这份文档。 我想从用户输入中显示文本在OutlinedTextField中,并使它在配置更改后继续存在。 使用下面的代码,当用户从键盘输入文本时,OutlinedTextField不会更新文本。 HelloContent(name = city.name, onNameC...

7得票1回答
当状态值改变时屏幕没有重新组合 - Jetpack Compose

这是一个视频通话屏幕。它需要令牌和频道名称才能工作,这些信息需要传递给init调用引擎。我将这些信息存储在一个数据类中,该数据类用作可变状态。 屏幕状态数据类 @Keep data class CallScreenState( val callerId: Int? = null, ...

7得票3回答
Compose中的可见性动画

我有一段需要动画显示或隐藏的文本,取决于值是否为空。如果能够单独处理可见性就会很简单,但是现在情况并非如此。 在下面的代码中,进入动画可以正常工作,但是当文本值为空时,退出动画无法正常工作。 我想到了一些方法,例如记住旧的值,但是不确定如何实现。 @Composable fun ShowAn...

7得票1回答
当一个对象的属性发生变化时如何触发Jetpack-Android中的重新组合?

想象一下以下的对象 data class CourseState( val key:Int=0, val name:String="", val courses:Courses=Courses()) 实现以下设计模式 private val _courseState = mutable...