小编Ash*_*tel的帖子

列表中的任何想法在 Jetpack compose 中的项目上具有适合/包裹宽度

我需要实现下一个 UI 元素:

在此处输入图片说明

  • 未知大小的字符串列表
  • 任何项目都应该是包装内容。
  • 如果某个项目不适合该行,他将在下一行。
  • 所有列表/网格都居中

android android-jetpack-compose

8
推荐指数
3
解决办法
3804
查看次数

如何在 Kotlin 中取消初始化 lateinit

我有一个 lateinit var 作为

lateinit var someVariable: SomeVariable
Run Code Online (Sandbox Code Playgroud)

我初始化这个值someVariable = SomeVariable(),并在需要时使用它。

在某个时候,我想将所有内容都设置为默认值并希望“取消初始化” someVariable。我怎样才能做到这一点?

不是在寻找将其类型更改为nullable对象并设置为空。我需要保持一种Non-Null类型。

kotlin kotlin-lateinit

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

Material Component FloatingActionButton 中的 shapeAppearance 导致崩溃

E/OpenGLRenderer: resultIndex is -1, the polygon must be invalid!
A/OpenGLRenderer: Error: Spot pair overflow!!! used 38, total 22
A/libc: Fatal signal 6 (SIGABRT), code -6 in tid 11996 (hwuiTask1)
Run Code Online (Sandbox Code Playgroud)

使用 shapeAppearance 属性会导致崩溃。

这是 XML 中的 FAB

<com.google.android.material.floatingactionbutton.FloatingActionButton
            android:id="@+id/fab"
            style="@style/Widget.MaterialComponents.FloatingActionButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="@dimen/fab_margin"
            android:onClick="@{() -> callback.add(viewModel.plant)}"
            android:tint="@android:color/white"
            app:shapeAppearance="@style/ShapeAppearance.Sunflower.FAB"  <--
            app:isGone="@{viewModel.isPlanted}"
            app:layout_anchor="@id/appbar"
            app:layout_anchorGravity="bottom|end"
            app:srcCompat="@drawable/ic_plus" />
Run Code Online (Sandbox Code Playgroud)

下面是 shapeAppearance 的样式,

<style name="ShapeAppearance.Sunflower.FAB" parent="ShapeAppearance.MaterialComponents">
        <item name="cornerFamily">rounded</item>
        <item name="cornerSizeTopLeft">0dp</item>
        <item name="cornerSizeTopRight">30dp</item>
        <item name="cornerSizeBottomRight">0dp</item>
        <item name="cornerSizeBottomLeft">30dp</item>
</style>
Run Code Online (Sandbox Code Playgroud)

这解决了崩溃。

    <style name="ShapeAppearance.Sunflower.FAB" parent="ShapeAppearance.MaterialComponents">
        <item name="cornerFamily">rounded</item>
        <item name="cornerSizeTopLeft">0dp</item> <--
        <item …
Run Code Online (Sandbox Code Playgroud)

android floating-action-button material-components android-jetpack material-components-android

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

第一次后Rxjava2distantUntilChanged()无法正常工作

我正在尝试使用.distinctUntilChanged()它,并且不会switchmap()在第一次之后传递价值。

RxTextView.textChanges(etUserQuery).debounce(300, TimeUnit.MILLISECONDS)
    .observeOn(AndroidSchedulers.mainThread()).filter(charSequence -> {
        if (charSequence.toString().isEmpty()) {
            etUserQuery.setHint("Please type username");
                return false;
            } else
                return true;
        }).distinctUntilChanged()
        .switchMap(charSequence -> vm.dataFromNetwork(charSequence.toString()))
        .subscribe(fetchUserResponce -> {
            noDataText.setVisibility(fetchUserResponce.getItems().size() == 0 ? View.VISIBLE : View.GONE);
            mUsersListAdapter.updateData(fetchUserResponce.getItems());
        }));
Run Code Online (Sandbox Code Playgroud)

是正确的使用地点.distinctUntilChanged()吗?

java android rx-java rx-java2

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