无法将按钮标签包装在 Material 按钮切换组内

Unable to wrap labels of buttons inside Material Button Toggle Group

我在 MaterialButtonToggleGroup 中有三个按钮。问题是 所有标签都被切断而不是包裹

 <com.google.android.material.button.MaterialButtonToggleGroup
        android:id="@+id/toggle_pomo_time"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_margin="@dimen/margin_medium"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent"
        app:layout_constraintTop_toBottomOf="@+id/pomo_card"
        app:singleSelection="true">

        <Button
            android:id="@+id/bt_pomo"
            style="@style/Widget.MaterialComponents.Button.OutlinedButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="@string/class_time" />

        <Button
            android:id="@+id/bt_short_break"
            style="@style/Widget.MaterialComponents.Button.OutlinedButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="@string/short_break" />

        <Button
            android:id="@+id/bt_long_break"
            style="@style/Widget.MaterialComponents.Button.OutlinedButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="@string/long_break" />

    </com.google.android.material.button.MaterialButtonToggleGroup>

我搜索了很多,但找不到任何合适的解决方案。任何帮助将非常感激。谢谢。

您不能将它们包在一行中,因为 MaterialButtonToggleGroup 视图的测量宽度被声明为有限的,因此它决定在最后将它们省略。您可以验证是否使用了更宽的屏幕或横向模式,如果文本仍在允许的宽度范围内,文本将换行。

删除按钮的水平填充 android:paddingHorizontal="0dp" 会腾出一点空间。

但是您可以通过编程方式分两行完成;因为 android:maxLength 属性 不适用于描述 :

的错误
val bt_pomo= findViewById<Button>(R.id.bt_pomo)
bt_pomo.maxLines = 2

并对其他两个按钮重复此操作