如何使文本出现在按钮旁边,而不是在按钮上?
这是我需要的截图:
您可以在第一个按钮上看到文本。它写在按钮上,我无法将它从中移开(除了改变重力,但这并不是我真正想要的)。在第二个按钮旁边,我放了一个标签,作为我想要实现的目标的指导。
有没有办法在Android中做到这一点?这在 ObjectiveC 中非常简单。
如何使文本出现在按钮旁边,而不是在按钮上?
这是我需要的截图:
您可以在第一个按钮上看到文本。它写在按钮上,我无法将它从中移开(除了改变重力,但这并不是我真正想要的)。在第二个按钮旁边,我放了一个标签,作为我想要实现的目标的指导。
有没有办法在Android中做到这一点?这在 ObjectiveC 中非常简单。
您可以使用 TextView 而不是按钮。
TextViews 是可点击的,就像按钮一样。
监听器的分配方式与按钮的分配方式相同。
因此,需要对代码进行非常小的更改(重命名控件前缀并将类型从 Button 更改为 TextView,这确实是一项微不足道的任务)。
您可以通过android:dawableLeft="@drawable/my_icon"
为左侧图形指定属性来为其添加可绘制对象
您可以使用 drawableLeft 和/或 drawableRigth 和/或 drawableTop 和/或 drawableBottom。
您可以指定drawablePadding,在图形和文本之间添加一些空间
这是一种最佳实践,可以使您的设计层次结构尽可能扁平化。
请注意,您不仅限于图像......您也可以使用 xml drawables!
你可以把你的第二个Button
和TextView
一个水平的LinearLayout
. 这将导致文本位于按钮的右侧。
尝试相对布局。有一个属性 align_leftof
像这样的东西:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<Button
android:id="@+id/btn1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:text="Button1"/>
<Button
android:id="@+id/btn2"
android:layout_below="@id/btn1"
android:layout_width="80dp"
android:layout_height="80dp"
android:text="Button2"/>
<TextView
android:layout_below="@id/btn1"
android:layout_width="40dp"
android:layout_height="80dp"
android:text="Text"
android:gravity="center"
android:layout_toRightOf="@id/btn2"/>
</RelativeLayout>
这不是一个完美的例子,但我希望它有所帮助。
您可以使用 aRelativeLayout
来包装这两个元素并轻松使用layout_rightOf
将其定位到TextView
旁边Button
,希望对您有所帮助:)
这很简单。只需使用 android:drawableLeft
. 在您的按钮中,可绘制图像如下:
<Button
android:layout_marginTop="20dp"
android:layout_width="250dp"
android:layout_height="50dp"
android:text="button"
android:drawableLeft="@mipmap/ic_launcher_round"/>