2014-05-12 80 views
-2

我试图让我的按钮显示3种状态,正常,按下和选择的。正常并按下显示确定,但选定状态不显示。我尝试使用state_focused state_activated和state_active以及状态组合设置为true和false,但没有成功。我怎样才能设置state_selected一个Android按钮

灿按钮显示选定的状态?如果是的话,我在做什么错了?

的minSdkVersion = 11 targetSdkVersion = 19

下面是XML用于选择器,red_button.xml

<?xml version="1.0" encoding="utf-8" ?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:state_selected="true"> 
     <shape> 
      <solid android:color="#000000" /> 
      <stroke 
       android:width="1dp" 
       android:color="#992f2f" /> 
      <corners android:radius="6dp" /> 
      <padding 
       android:left="10dp" 
       android:top="10dp" 
       android:right="10dp" 
       android:bottom="10dp" /> 
     </shape> 
    </item> 
    <item android:state_pressed="true"> 
     <shape> 
      <solid android:color="#ef4444" /> 
      <stroke 
       android:width="1dp" 
       android:color="#992f2f" /> 
      <corners android:radius="6dp" /> 
      <padding 
       android:left="10dp" 
       android:top="10dp" 
       android:right="10dp" 
       android:bottom="10dp" /> 
     </shape> 
    </item> 
    <item> 
     <shape> 
      <gradient 
       android:startColor="#ef4444" 
       android:endColor="#992f2f" 
       android:angle="270" /> 
      <stroke 
       android:width="1dp" 
       android:color="#992f2f" /> 
      <corners android:radius="6dp" /> 
      <padding 
       android:left="10dp" 
       android:top="10dp" 
       android:right="10dp" 
       android:bottom="10dp" /> 
     </shape> 
    </item> 
</selector> 

和这里的用于按钮,其被包含在的LinearLayout内,并且加载为在xml片段插入mainActivity

<Button 
      android:background="@drawable/red_button" 
      android:id="@+id/scene_1_btn" 
      android:layout_height="wrap_content" 
      android:layout_width="wrap_content" 
      android:maxWidth="150dp" 
      android:minWidth="100dp" 
      android:text="@string/scene_1_btn_text" 
      android:onClick="sendMessage" 
      style="@style/button_text" /> 

谢谢。

回答

1

按钮的行为事实上象键盘按钮,即他们只有两种状态即正常和压制。如果你想记住/显示选择状态,我有一个想法...,尝试使用'无线电组'(如果你只想从一个组中选择一个)或者使用切换按钮/开关(每个组合他们将他们的状态记为ON或OFF)并创建他们的自定义用户界面,使他们看起来像按钮,如你所愿。

+0

谢谢Kaustuv,我有一种感觉,按钮不支持其他状态。 –

+0

无线电组听起来像要走的路,所以我会试一试 –

相关问题