gpt4 book ai didi

android - 将 drawableLeft 与按钮的文本对齐

转载 作者:IT王子 更新时间:2023-10-28 23:45:29 33 4
gpt4 key购买 nike

这是我的布局:

enter image description here

我面临的问题是可绘制复选标记。我将如何将它与文本对齐,它们都在按钮内居中?这是 XML:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".PostAssignmentActivity" >

<LinearLayout
style="?android:attr/buttonBarStyle"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:orientation="horizontal" >

<Button
style="?android:attr/buttonBarButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:drawableLeft="@drawable/ic_checkmark_holo_light"
android:text="Post" />

<Button
style="?android:attr/buttonBarButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:text="Cancel" />
</LinearLayout>

</RelativeLayout>

应用 android:gravity="center_vertical"将文本和 drawable 拉到一起,但随后文本不再居中对齐。

最佳答案

解决方案 1

在您的第一个按钮中设置 android:paddingLeft。这将强制 drawableLeft 向右 paddingLeft 数量。这是快速/hacky 的解决方案。

解决方案 2

不要使用 ButtonView,而是使用包含 textview 和 imageview 的 LinearLayout。这是一个更好的解决方案。它使您可以更灵活地定位复选标记。

将您的 ButtonView 替换为以下代码。您需要 LinearLayoutTextView 来使用 buttonBarButtonStyle 以便背景颜色在选择时正确且文本大小正确。您需要为子级设置 android:background="#0000",以便只有 LinearLayout 处理背景颜色。

<LinearLayout
style="?android:attr/buttonBarButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal" >
<ImageView
style="?android:attr/buttonBarButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:clickable="false"
android:background="#0000"
android:src="@drawable/ic_checkmark_holo_light"/>
<TextView
style="?android:attr/buttonBarButtonStyle"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:clickable="false"
android:background="#0000"
android:text="Done" />
</LinearLayout>

这是我在尝试时截取的一些屏幕截图。

enter image description here enter image description here enter image description here

关于android - 将 drawableLeft 与按钮的文本对齐,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14668219/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com