2017-09-24 21 views
1

여기 action_btn_state을 그릴 수버튼의 클릭 상태에서 배경, 텍스트 색상 및 모서리를 어떻게 설정합니까?

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
<item android:state_pressed="true" 
    android:drawable="@color/colorAccent" 
    android:color="@color/white"> 
    <shape> 
     <stroke 
      android:width="1dp" 
      android:color="@color/action_btn_border" /> 
     <corners 
      android:radius="3dp" /> 
    </shape> 

</item> 

<item android:state_focused="true" 
    android:drawable="@color/colorAccent" 
    android:color="@color/white"> 
    <shape> 
     <stroke 
      android:width="1dp" 
      android:color="@color/action_btn_border" /> 
     <corners 
      android:radius="3dp" /> 
    </shape> 
</item> 

<item 
    android:drawable="@null" 
    android:color="@color/colorAccent" > 
    <shape> 
     <stroke 
      android:width="1dp" 
      android:color="@color/action_btn_border" /> 
     <corners 
      android:radius="3dp" /> 
    </shape> 

</item> 

이 여기 내 출력, 내가 먼저 버튼을 때 스크린 샷을 촬영 한 내 레이아웃

<Button 
      android:layout_width="70sp" 
      android:layout_height="30sp" 
      android:layout_marginRight="8sp" 
      android:padding="0sp" 
      android:layout_gravity="center" 
      android:textColor="@color/msg_item_action_btn" 
      android:background="@drawable/action_btn_state" 
      android:text="Like"/> 

되고 clicked.As 당신이 볼 수있는 내입니다 둥근 모서리가 없으며, 색상이 흰색으로 변경되지 않고 기본 그림자가오고 있습니다. 나는 원하지 않습니다. 아무도 내가 어떻게이 일을 할 수 있는지 도울 수 없다.

enter image description here

답변

0

당신은 별도의 XML 파일을 누르면, 집중, ... 국가처럼 버튼의 서로 다른 상태에 대한 선택기를 사용하고 배경 버튼 여기 위해 설정해야하는 것은의 선택에 대한 샘플 코드 버튼 :

<selector xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item android:drawable="@drawable/action_btn_state" /> 
    <item android:state_pressed="true"android:drawable="@drawable/action_selected"/> 
</selector> 

당신은 당신의 라운드와 색상을 누르면 상태에 대한 또 다른 XML 파일을 정의하고이 셀렉터에 설정할 수 있습니다.