3

我想使用自定义切换按钮。目前我使用以下 xml 文件来定义“自定义”背景:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/switchon" android:state_checked="true" />
    <item android:drawable="@drawable/switchoff" android:state_checked="false"/>
 </selector>

<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#FF0000" />
<corners android:bottomRightRadius="35dp"
    android:bottomLeftRadius="35dp"
    android:topRightRadius="35dp"
    android:topLeftRadius="35dp"/>
</shape>

作为背景。

当我使用以下代码在布局中包含按钮时,它会生成一个红色/绿色切换按钮。

<ToggleButton
    android:id="@+id/ToggleButton1"
    android:layout_height="50dp"
    android:layout_marginRight="30dp"
    android:background="@drawable/toggle_button"
    android:text=""
    android:textOff=""
    android:textOn=""
    android:layout_marginStart="99dp"
    android:layout_marginTop="84dp"
    android:layout_width="50dp"
    android:layout_below="@+id/section_label"
    android:layout_toEndOf="@+id/section_label"
    style="@android:style/Widget.Button.Toggle"
    android:checked="true" />

现在我希望这个按钮有一定的高度。添加 android:elevation="2dp" 不会产生任何效果。

谁能告诉我该怎么做?我无法找到解决方案。

4

2 回答 2

1

为了解决这个问题,我在 Toggle 按钮下方放置了一个 CardView。设置海拔确实可以立即使用卡片视图。

感谢您的输入!:-)

于 2016-09-29T14:21:36.707 回答
0

嘿使用 SwitchCompat 而不是 Toggle 按钮

 <android.support.v7.widget.SwitchCompat
        android:id="@+id/Switch"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:textOff=""
        android:text="Toggle Switch"
        android:background="@android:color/transparent"
        android:textOn=""
        android:elevation="5dp"
        android:button="@null"
        android:padding="20dp"/>

这肯定有效

于 2016-09-28T14:50:11.203 回答