java - 多行按钮文本忽略按钮边距的问题

标签 java android button margin line-breaks

基本上我有一个带有很长字符串的按钮,它会导致换行。该按钮具有左右边距,但是对于此类多行按钮文本,这些边距会被忽略,因为该按钮占据了父级的整个宽度。

一个明显的解决方案是将布局宽度设置为 0dp,但这会强制使用静态宽度,这意味着对于较短的按钮文本,按钮不再换行。

是否有一个好的解决方案如何保持wrap_content的宽度但仍然不忽略边距?

<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android">

<Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_marginLeft="32dp"
        android:layout_marginRight="32dp"
        android:text="@string/longstring"
        app:layout_constraintEnd_toEndOf="parent"
        app:layout_constraintStart_toStartOf="parent" />


</androidx.constraintlayout.widget.ConstraintLayout>

最佳答案

在按钮 xml 中添加以下行,以便按钮尊重边距

app:layout_constrainedWidth="true"

输出

enter image description here

关于java - 多行按钮文本忽略按钮边距的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60976661/

相关文章:

缺少 Android Studio 0.5.3 android.compileSdkVersion

SwiftUI 按钮作为 EditButton

java - Hadoop “Unable to load native-hadoop library for your platform”警告

java - Weblogic 12c 无法解析类文件 hikaricp-3.4.5 module-info.class

java - 将工作流添加到自定义 portlet(由 Plugins-SDK 创建)

android - 指示 XmlPullParser 的缓冲区大小

java - 使用 Android Studio 2.0 启动 android 应用程序时安装重启补丁时出错

java - 如何在我的应用程序中使用android按钮png作为按钮

c# - 当在表单上的某处单击按钮时,wpf 编辑列表框中的项目

java - 循环不工作并产生 IndexOutOfBoundsException