我已经建立了一个按钮栏,希望它像这样展开,外部的按钮占据40%的空间,中间的按钮占据20%的空间。正如你在屏幕截图中看到的,这是可行的,但是文本在按钮中被裁剪了。

我发现文本停留在1权重(=20%)的范围内,尽管按钮“知道”它有更多的空间-否则它不会正确地填充可绘制的背景。
下面是按钮栏的设置:
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@id/headerbar_top"
android:layout_width="match_parent"
android:layout_height="@dimen/headerbar_divided_height"
android:orientation="horizontal"
android:gravity="center"
android:weightSum="5"
>
<Button
android:id="@id/headerbar_btn_left"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="2"
android:gravity="center_horizontal|bottom"
android:paddingBottom="@dimen/headerbar_paddingBottom"
android:textSize="@dimen/headerbar_textSize"
android:textColor="@color/font"
android:text="Spots"
android:maxLines="1" android:lines="1"
android:ellipsize="end"
android:background="@drawable/headerbar_button_left_states"
android:onClick="onHeaderbarBtnClick"
android:layout_marginRight="@dimen/headerbar_divided_margin"
/>
<Button
android:id="@id/headerbar_btn_center"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="1"
android:gravity="center_horizontal|bottom"
android:paddingBottom="@dimen/headerbar_paddingBottom"
android:textSize="@dimen/headerbar_textSize"
android:textColor="@color/font"
android:maxLines="1" android:lines="1"
android:ellipsize="end"
android:background="@drawable/headerbar_button_center_states"
android:onClick="onHeaderbarBtnClick"
android:layout_marginRight="@dimen/headerbar_divided_margin"
android:layout_marginLeft="@dimen/headerbar_divided_margin"
/>
<Button
android:id="@id/headerbar_btn_right"
android:layout_width="0dip"
android:layout_height="fill_parent"
android:layout_weight="2"
android:gravity="center_horizontal|bottom"
android:paddingBottom="@dimen/headerbar_paddingBottom"
android:textSize="@dimen/headerbar_textSize"
android:textColor="@color/font"
android:text="Tours"
android:maxLines="1" android:lines="1"
android:ellipsize="end"
android:background="@drawable/headerbar_button_right_states"
android:onClick="onHeaderbarBtnClick"
android:layout_marginLeft="@dimen/headerbar_divided_margin"
/>
</LinearLayout>有人知道为什么按钮文本表现得如此奇怪吗?
编辑:这是左按钮的XML-drawable:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/headerbar_button_left_on" android:state_selected="true"/>
<item android:drawable="@drawable/headerbar_button_left_off"/>
</selector>下面是可绘制的部分:


发布于 2012-09-12 20:55:01
从按钮的声明中删除android:ellipsize="end"。
还有:你的9-patch-drawables似乎缺少内容区域。底部和右下角用于9补丁内容。Here's a good simple tutorial on 9-patches.
https://stackoverflow.com/questions/12388396
复制相似问题