小编Ehs*_*msz的帖子

如何使 Jetpack Compose 中的小部件不可见?

ProgressIndicator我正在尝试在列中显示和隐藏。问题是当我想隐藏 时ProgressIndicator,其他小部件之间的空间也会被删除(如View.GONE),但我想保留小部件的大小(如View.INVISIBLE

例子:

@Composable
fun Main(isLoading: Boolean) {
    Column {
        Text(text = "Text")

        if (isLoading) {
            CircularProgressIndicator()
        }

        Button(onClick = { /*clicked*/ }, content = { Text(text = "Button") })    
    }
}
Run Code Online (Sandbox Code Playgroud)

我找到了解决方案,但我不确定这是否是正确的方法。

if (isLoading) {
    CircularProgressIndicator()
} else {
    Spacer(modifier = Modifier.height(40.dp))
}

Run Code Online (Sandbox Code Playgroud)

还有其他方法可以使小部件不可见吗View.INVISIBLE

如何获取小部件大小以设置Spacer大小?

谢谢

android kotlin android-jetpack-compose

33
推荐指数
3
解决办法
2万
查看次数

有没有办法将 Jetpack Compose Typeface 转换为原生 Typeface?

我正在尝试使用NativeCanvas和绘制文本NativePaint。我想使用 Jetpack compose FontFamilyTypeface但我必须使用本机Typeface.

我无法获取字体路径来compose FontFamily创建本机Typeface.

有什么办法可以转换Compose Typeface为原生Typeface吗?

谢谢

android android-typeface android-jetpack-compose

6
推荐指数
1
解决办法
486
查看次数

Jetpack ComposeInfiniteRepeatable,重复startDelay

我想用一次性start delayJetpack Compose.

infiniteRepeatable()用过tween()

val value by rememberInfiniteTransition().animateFloat(
    initialValue = 0f,
    targetValue = 1f,
    animationSpec = infiniteRepeatable(
        animation = tween(
            durationMillis = 700,
            delayMillis = 200
        )
    )
)
Run Code Online (Sandbox Code Playgroud)

在这种情况下,delayMillis将重复:

*delay* 0..1, *delay* 0..1, *delay* 0..1 , *delay* 0..1  ...
Run Code Online (Sandbox Code Playgroud)

但在ValueAnimator其中start delay是一次性延迟:

*delay* 0..1, *delay* 0..1, *delay* 0..1 , *delay* 0..1  ...
Run Code Online (Sandbox Code Playgroud)
*delay* 0..1, 0..1, 0..1, 0..1, 0..1, 0..1, 0..1  ...
Run Code Online (Sandbox Code Playgroud)

InfiniteRepeatable有没有办法为in设置一次性启动延迟Jetpack Compose? …

android android-animation android-jetpack-compose

6
推荐指数
1
解决办法
7217
查看次数

错误:build.gradle 中的“未解析的引用:versionCode”

我正在尝试将一个新模块(库模块)添加到我的项目中,但在build.gradle.kts(对于库模块)我有这个错误:

org.gradle.internal.exceptions.LocationAwareException: Build file ' ... /build.gradle.kts' line: 13
Script compilation errors:

  Line 13:         versionCode = 1
                   ^ Unresolved reference: versionCode

  Line 14:         versionName = "1.0"
                   ^ Unresolved reference: versionName

.
.
.

Caused by: ScriptCompilationException( ... )
Run Code Online (Sandbox Code Playgroud)

build.gradle.kts

org.gradle.internal.exceptions.LocationAwareException: Build file ' ... /build.gradle.kts' line: 13
Script compilation errors:

  Line 13:         versionCode = 1
                   ^ Unresolved reference: versionCode

  Line 14:         versionName = "1.0"
                   ^ Unresolved reference: versionName

.
.
.

Caused by: ScriptCompilationException( ... )
Run Code Online (Sandbox Code Playgroud)

我将不胜感激任何帮助

android gradle android-gradle-plugin gradle-kotlin-dsl

4
推荐指数
1
解决办法
736
查看次数

Angular ng 构建抛出错误写入 EPIPE

我尝试构建一个有角度的应用程序,ng build但出现以下错误:

throw er; // Unhandled 'error' event
      ^

Error: write EPIPE
    at afterWriteDispatched (node:internal/stream_base_commons:164:15)
    at writeGeneric (node:internal/stream_base_commons:155:3)
    at Socket._writeGeneric (node:net:795:11)
    at Socket._write (node:net:807:8)
    at writeOrBuffer (node:internal/streams/writable:389:12)
    at _write (node:internal/streams/writable:330:10)
    at Socket.Writable.write (node:internal/streams/writable:334:10)
    at Object.writeToStdin (/home/[user]/example/node_modules/esbuild-wasm/lib/main.js:1864:19)
    at sendRequest (/home/[user]/example/node_modules/esbuild-wasm/lib/main.js:637:14)
    at start (/home/[user]/example/node_modules/esbuild-wasm/lib/main.js:1274:9)
Emitted 'error' event on Socket instance at:
    at emitErrorNT (node:internal/streams/destroy:157:8)
    at emitErrorCloseNT (node:internal/streams/destroy:122:3)
    at processTicksAndRejections (node:internal/process/task_queues:83:21)
    at runNextTicks (node:internal/process/task_queues:65:3)
    at processImmediate (node:internal/timers:437:9) {
  errno: -32,
  code: 'EPIPE',
  syscall: 'write'
}

Run Code Online (Sandbox Code Playgroud)

我检查了很多类似的问题,但没有解决我的问题。这个错误与其他错误有点不同。

角度版本:

Angular CLI: 13.2.2
Node: …
Run Code Online (Sandbox Code Playgroud)

npm typescript angular

4
推荐指数
1
解决办法
4827
查看次数