2016-09-28 7 views
3

Я хочу использовать пользовательские кнопки переключения. В настоящее время я использую следующий файл XML, чтобы определить "обычай" фон:Android: высота для кнопки переключения с пользовательским фоном

<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" не производит никакого эффекта.

Может ли кто-нибудь сказать мне, как это сделать? Я не смог найти решение.

+1

Это может вам помочь: http://stackoverflow.com/questions/26572048/elevation-on-android-lollipop-not-working –

+0

Эй, я не пользуюсь прозрачными цветами и до сих пор ни один из другие решения работали – Chuchaki

ответ

0

Чтобы решить эту проблему, я поставить CardView под тумблера. Установка высоты действительно работала сразу с видом карты.

Спасибо за ввод! :-)

0

Эй Используйте SwitchCompat вместо кнопки Переключить

<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"/> 

Это определенно работает

+0

Эй, я использую «пользовательский» фон, который меняет цвет при переключении кнопки. – Chuchaki

+0

@Чучаки проверить мой отредактированный ответ, я надеюсь, что он сработает –

+0

вы можете прямо использовать возвышение в SwitchCompat –