首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使两个内容可变的按钮具有相同大小的Android

使两个内容可变的按钮具有相同大小的Android
EN

Stack Overflow用户
提问于 2022-04-22 21:40:53
回答 1查看 33关注 0票数 1

我试图在约束布局中使两个按钮的大小与文本更多的按钮相同。

这就是我所拥有的

这就是我想要的

使用按钮的高度属性,将其设置为"0“,可以让一个按钮跟随另一个按钮,但另一个按钮则不这样做。

这是代码

代码语言:javascript
复制
<androidx.constraintlayout.widget.ConstraintLayout
                    android:id="@+id/tools_ly_first_buttons"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    android:layout_marginStart="@dimen/margin_bubble_answer_buttons"
                    android:layout_marginEnd="@dimen/margin_bubble_answer_buttons"
                    android:layout_marginBottom="2dp"
                    android:visibility="visible"
                    app:layout_constraintEnd_toEndOf="@+id/tools_btn_1"
                    app:layout_constraintStart_toEndOf="@+id/tools_btn_1"
                    tools:visibility="visible">

                    <Button
                        android:id="@+id/tools_btn_1"
                        android:layout_width="0dp"
                        android:layout_height="wrap_content"
                        android:background="@drawable/btn_round_confirmation_yes"
                        android:fontFamily="@font/calibri_regular"
                        android:textAllCaps="false"
                        android:textColor="@color/white"
                        android:layout_marginEnd="1dp"
                        android:textSize="14sp"
                        android:padding="@dimen/padding_bubble_answer_buttons_text"
                        tools:text="Perfect asdasdas."
                        app:layout_constraintEnd_toStartOf="@+id/tools_btn_2"
                        app:layout_constraintStart_toStartOf="parent"
                        app:layout_constraintTop_toTopOf="@id/tools_ly_first_buttons"
                        app:layout_constraintBottom_toBottomOf="@id/tools_ly_first_buttons"/>

                    <Button
                        android:id="@+id/tools_btn_2"
                        android:layout_width="0dp"
                        android:layout_height="wrap_content"
                        android:background="@drawable/btn_round_confirmation_yes"
                        android:fontFamily="@font/calibri_regular"
                        android:textAllCaps="false"
                        android:textColor="@color/white"
                        android:padding="@dimen/padding_bubble_answer_buttons_text"
                        android:layout_marginStart="1dp"
                        android:textSize="14sp"
                        app:layout_constraintEnd_toEndOf="parent"
                        app:layout_constraintStart_toEndOf="@+id/tools_btn_1"
                        app:layout_constraintTop_toTopOf="parent"
                        app:layout_constraintBottom_toBottomOf="parent"
                        tools:text="Perfect Perfect square trition. Perfect Perfect square trition. Perfect Perfect square trition. Perfect Perfect square trition. Perfect Perfect square trition. Perfect Perfect square trition." />

                </androidx.constraintlayout.widget.ConstraintLayout>
EN

回答 1

Stack Overflow用户

发布于 2022-04-23 00:58:06

您可以通过将两个按钮包装到一个LinearLayout (或另一个ConstraintLayout)中,并将它们的高度设置为match_parent,同时将容器视图的高度设置为wrap_content

如果您的ConstraintLayout已经是要嵌套在其他视图中的容器,则不需要额外的嵌套。只要将按钮高度设置为match_parent,它们就会填充容器。

代码语言:javascript
复制
<androidx.constraintlayout.widget.ConstraintLayout 
    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_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <LinearLayout
        android:id="@+id/button_container"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintTop_toTopOf="parent">

        <Button
            android:id="@+id/btnLeft"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:text="Short Text"
            android:layout_weight="1.0"
            android:layout_margin="4dp"
            />

        <Button
            android:id="@+id/btnRight"
            android:text="Long Text Taking Up Many Many Many Lines of Space and More than One Line Definitely"
            android:layout_width="0dp"
            android:layout_height="match_parent"
            android:layout_weight="1.0"
            android:layout_margin="4dp"
            />

    </LinearLayout>

</androidx.constraintlayout.widget.ConstraintLayout>

这就产生了什么--不管哪个按钮有长的文本。

在您共享的注释中,父ConstraintLayout似乎受限于其子视图之一(tools_btn_1)。这可能是无效的。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71974939

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档