6

我对 Android 4 中的开关按钮感到疯狂。

首先,我将选择器设置为背景,其中包含从可绘制文件夹中选择的两个不同的 PNG 文件:

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/form_switch_no" android:state_checked="false"/>
    <item android:drawable="@drawable/form_switch_ok" android:state_checked="true"/>
    <item android:drawable="@drawable/form_switch_no"/>
</selector>

但我不知道为什么它们是 x 缩放的。我想管理这个尺寸,但我试图改变 layout_width/height/weight... 没有成功。

我还有一个自定义 PNG 文件用作开关的拇指。我还需要管理这个拇指的大小,因为如果我将 textOn 和 textOff 属性设置为“”,拇指会变得非常小。此外,我想更改背景的拇指填充,因为它没有出现居中。

这是我的 Switch XML 定义:

<Switch
    android:id="@+id/switchUsers"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="@string/user"
    android:textOn=""
    android:textOff=""
    android:thumb="@drawable/form_switch_slider"
    android:track="@drawable/switch_user_selector" />

我试图改变图像大小并将它们制作成九个补丁,但我无法达到我的目标。

任何帮助将不胜感激。谢谢!

4

1 回答 1

8

没有文本的极小滑块的解决方案是通过以下组合解决的:

android:thumbTextPadding="25dp"
android:textOn=""
android:textOff=""

然后,同一滑块中的小填充问题是 9-patch 图像问题。我不得不将底部和右侧的黑线同分地再延伸一个像素。

希望这可以帮助有同样问题的人。

于 2013-04-03T11:03:15.957 回答