嗨,我有一个看起来像img1
的按钮。
我需要按钮的文字为img2
的顶级/水平中心。
我尝试使用此
<Button
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/equalBtn2"
android:background="@drawable/blue_payment_button"
android:textSize="40sp"
android:textColor="@drawable/text_general"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/button15"
android:layout_toEndOf="@+id/button15"
android:layout_weight="1"
android:layout_marginLeft="2dp"
android:layout_marginRight="2dp"
android:layout_marginBottom="2dp"
android:text="0"
android:gravity="center_horizontal|top" />
但我得到的结果为img3
。
我不想要文本和按钮头之间的顶部间距。
请帮忙。
提前谢谢。
修改
按钮的父XML
<LinearLayout
android:layout_width="match_parent"
android:layout_height="fill_parent"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="false"
android:id="@+id/linearLayout5"
android:layout_above="@+id/linearLayout3"
android:layout_weight="1" >
<Button
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="C"
android:id="@+id/button13"
android:layout_alignParentTop="true"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:background="@drawable/blue_payment_button"
android:textSize="40sp"
android:textColor="@drawable/text_general"
android:layout_weight="1"
android:layout_margin="2dp" />
<Button
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="0"
android:id="@+id/button14"
android:background="@drawable/yellow_general_button"
android:textSize="40sp"
android:textColor="@drawable/text_general"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/button13"
android:layout_toEndOf="@+id/button13"
android:layout_weight="1"
android:layout_margin="2dp" />
<Button
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:text="<"
android:id="@+id/button15"
android:background="@drawable/blue_payment_button"
android:textSize="40sp"
android:textColor="@drawable/text_general"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/button14"
android:layout_toEndOf="@+id/button14"
android:layout_weight="1"
android:layout_margin="2dp" />
<Button
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/equalBtn2"
android:background="@drawable/blue_payment_button"
android:textSize="40sp"
android:textColor="@drawable/text_general"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/button15"
android:layout_toEndOf="@+id/button15"
android:layout_weight="1"
android:layout_marginLeft="2dp"
android:layout_marginRight="2dp"
android:layout_marginBottom="2dp"
android:text="0"
android:gravity="center_horizontal|top" />
</LinearLayout>
</LinearLayout>
答案 0 :(得分:1)
尝试使用此代码(如徽章样式):编辑!
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<Button
android:id="@+id/myButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"/>
<TextView
android:id="@+id/textOne"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignTop="@id/myButton"
android:layout_centerHorizontal="true"
android:text="0"/>
</RelativeLayout>
答案 1 :(得分:1)
<Button
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/equalBtn2"
android:background="@drawable/add_exp_pressed"
android:textSize="40sp"
android:textColor="@color/AliceBlue"
android:layout_alignParentTop="true"
android:layout_toRightOf="@+id/button15"
android:layout_toEndOf="@+id/button15"
android:layout_weight="1"
android:layout_marginLeft="2dp"
android:layout_marginRight="2dp"
android:layout_marginBottom="2dp"
android:paddingTop="0dp"
android:text="Hello"
android:layout_marginTop="-10dp"
android:gravity="center_horizontal|top" />
试试这个
答案 2 :(得分:0)
最好的方法是设置 minHeight =&#34; 0dp&#34; 并设置 android:paddingBottom =&#34;无论尺寸&#34; 你喜欢。
示例:
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:minHeight="0dp"
android:paddingBottom="16dp"
android:text="O"
android:background="@color/yellow" />
minHeight 删除按钮的默认 paddingTop 和 paddingBottom 。因此,您可以手动设置 paddingBottom ,以便文本与按钮顶部对齐。
答案 3 :(得分:0)
在styles.xml中创建自定义样式
<style name="textTop">
<item name="android:gravity">top|center</item>
</style>
并将此样式设置为按钮
<Button
style="@style/textTop"
.... />
并且永远不要将android:gravity
设置为按钮,它将消除样式中最上面提到的重力