问题描述
我的按钮最终看起来像这样:
那是4个切换按钮(分别是3个半),第二个被选中。 我在drawable中设置了padding,但是由于某种原因,padding要么被忽略,要么被用于文本的按钮边框。 如果我不使用可绘制对象,则默认的Android按钮看起来很好,它们之间没有空格。
我的布局示例:
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_weight="1"
android:orientation="horizontal"
android:minWidth="25px"
android:minHeight="25px">
<ToggleButton
android:text="@string/btn_resp_tmp"
android:id="@+id/resp1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1"
android:background="@drawable/CustomSelector"
android:enabled="true" />
<ToggleButton
(...)
我的可绘制样本:
<selector xmlns:android="http://schemas.android.com/apk/res/android" >
<item android:state_checked="true">
<shape >
<solid
android:color="#FF9800" />
<stroke
android:width="1dp"
android:color="#E0E0E0" />
<corners
android:radius="4dp" />
<padding
android:left="10dp"
android:right="10dp"
android:top="10dp"
android:bottom="10dp" />
</shape>
</item>
<item >
<shape >
<solid
android:color="#E0E0E0" />
<stroke
android:width="1dp"
android:color="#E0E0E0" />
<corners
android:radius="4dp" />
<padding
android:left="10dp"
android:right="10dp"
android:top="10dp"
android:bottom="10dp" />
</shape>
</item>
</selector>
任何帮助将不胜感激,因为我的Google-fu严重使我无法完成此任务。
1楼
当您按照以下代码设置形状填充时:
<padding
android:left="10dp"
android:right="10dp"
android:top="10dp"
android:bottom="10dp" />
这意味着红线是10dp。
但是在in选择器中您无法定义形状边距。 因此,作为一种工作方式,您可以设置切换按钮边距:
<ToggleButton
......
android:layout_marginRight="5dp"
..... />