如何在 xml 和 kotlin 组合中创建类似布局的计算器

Posted

技术标签:

【中文标题】如何在 xml 和 kotlin 组合中创建类似布局的计算器【英文标题】:How to create calculator like layout in xml and kotlin combination 【发布时间】:2021-06-03 18:45:45 【问题描述】:

我是 Stack Overflow 的新手。我期待着用 XML 和 Kotlin 组合制作一个计算器。我知道我应该在上面使用 TextView 或 EditText,在下面使用 RecyclerView,但是“如何在 RecyclerView *** 的一行中添加 3 个按钮”。在所有教程中,我看到它们每行只显示一个元素。但我必须添加 3 个元素。我尝试谷歌搜索“如何在 RecyclerView *** 的一行中添加 3 个按钮”,但没有得到很好的结果。

我很清楚 RecyclerView 的工作原理,所以我不想要完整的代码。我只需要修改后的哪个部分在 RecyclerView 中获得 3 个按钮。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_
    android:layout_
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/calcTv"
        android:layout_marginTop="9dp"
        android:textSize="36dp"
        android:textAlignment="center"
        android:text="5+4"
        android:layout_alignParentTop="true"
        android:layout_
        android:layout_/>

    <androidx.recyclerview.widget.RecyclerView
        android:layout_below="@+id/calcTv"
        android:layout_
        android:layout_/>


</RelativeLayout>

除了上面的代码,我还有一个 RecyclerView 适配器和用于布局膨胀的 XML。

如果问题不清楚以及我的提问方式,请提前道歉。

【问题讨论】:

【参考方案1】:

layoutManagerspanCount 属性添加到您的RecyclerView:

<androidx.recyclerview.widget.RecyclerView
        android:layout_below="@+id/calcTv"
        android:layout_
        android:layout_
        app:spanCount="3"
        app:layoutManager="androidx.recyclerview.widget.GridLayoutManager"/>

layoutManager 用于制作列表网格或线性

spanCount是列数

【讨论】:

以上是关于如何在 xml 和 kotlin 组合中创建类似布局的计算器的主要内容,如果未能解决你的问题,请参考以下文章

如何在没有初始化和特定数量元素的情况下在 Kotlin 中创建对象数组?

如何在 Android Kotlin 中创建 BottomSheet

如何使用 JUnit 5 在 Kotlin 中创建 TestContainers 基测试类

如何在 Kotlin 常用代码中创建动态代理?

如何从枚举在 Kotlin 中创建编译时常量?

如何计算在 Kotlin 中创建的线程数?