2014-11-03 3 views
-1

Я хочу, чтобы кнопка выглядела активированной (прозрачной) с самого начала. Мой селектор:Кнопка не выглядит активированной

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:state_activated="true" > 
    <shape> 
     <solid 
      android:color="@android:color/transparent" /> 
    </shape> 
</item> 
<item android:state_pressed="false" android:state_focused="false" android:state_activated="false"> 
    <shape> 
     <gradient 
      android:startColor="#ef4444" 
      android:endColor="#992f2f" 
      android:angle="270" /> 
    </shape> 
</item> 

И код кнопки:

<Button 
    android:background="@drawable/my_bg" 
    android:state_activated="true" 
/> 

По умолчанию цвет кнопки красный, так что я думаю, что проблема в андроида: state_activated = «истина». Как я могу это решить?

+0

вы можете поделиться скриншот того, что вы достигли с этим кодом? –

+0

Ничего, «state_activated» просто игнорируется. Кстати, я решил проблему переключиться на ToggleButtons и state_checked. – user2502368

ответ

0

пожалуйста, используйте это поможет

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 

    <item android:state_focused="true"><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> 
      <solid android:color="#2d7ebb" /> 

      <corners android:radius="5dp"> 
       <stroke android:width="2dip" android:color="#2d7ebb" /> 
      </corners> 
     </shape></item> 
    <item android:state_pressed="true"><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> 
      <solid android:color="#2d7ebb" /> 

      <corners android:radius="5dp"> 
       <stroke android:width="2dip" android:color="#2d7ebb" /> 
      </corners> 
     </shape></item> 
    <item><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle"> 
      <solid android:color="#55acee" /> 

      <stroke android:width="2dip" android:color="#55acee" /> 

      <corners android:radius="5dp" /> 
     </shape></item> 

</selector> 
+0

где * прозрачный * цвет? –

+0

Вы можете поместить цвета в соответствии с вашим требованием, так как нажаты верхние два элемента и состояние foccused, или вы можете сказать, что эти элементы выполняются, когда вы нажимаете кнопку, а последний - для состояния по умолчанию, когда не выполняется actio. :) –

Смежные вопросы