android 自定义switch如何改变tack高度
时间: 2023-07-18 07:47:53 浏览: 108
android自定义switch
4星 · 用户满意度95%
要改变 Android 自定义 Switch 的 Track 高度,你需要在自定义 Switch 的 XML 布局文件中添加一个属于 Track 的 Layer,并设置其高度属性。以下是一个示例代码:
```xml
<SeekBar
...
android:splitTrack="false"
android:thumb="@drawable/custom_thumb"
android:progressDrawable="@drawable/custom_track" />
```
在上面的代码中,`android:progressDrawable` 属性用于设置 Track 的自定义 Drawable,你可以在该 Drawable 中设置 Track 的高度属性。例如,你可以在 `custom_track.xml` 文件中添加如下代码:
```xml
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@android:id/background">
<shape android:shape="rectangle">
<corners android:radius="20dp" />
<solid android:color="@color/grey" />
</shape>
</item>
<item android:id="@android:id/progress">
<clip>
<shape android:shape="rectangle">
<corners android:radius="20dp" />
<solid android:color="@color/blue" />
</shape>
</clip>
</item>
<item android:id="@android:id/secondaryProgress">
<clip>
<shape android:shape="rectangle">
<corners android:radius="20dp" />
<solid android:color="@color/light_blue" />
</shape>
</clip>
</item>
</layer-list>
```
在上面的代码中,`<shape>` 标签用于设置 Track 的形状和颜色,`<corners>` 标签用于设置 Track 的圆角半径,`<clip>` 标签用于裁剪 Track 的长度和高度。通过修改 `<shape>` 标签中的高度属性和 `<clip>` 标签中的长度和高度属性,你就可以改变 Android 自定义 Switch 的 Track 高度了。
阅读全文