2012-02-27 8 views
5

Mam jedną strzałkę w prawach textview.so używam android:drawableRight="@drawable/arrow" i działa dobrze. Ale chcę, że gdy tekst jest w wybranym stanie, muszę pokazać obraz strzałki, nie, nie. czy jest jakiś sposób, żebym mógł to osiągnąć za pomocą selektora.Czy możliwe jest nadanie stanów liniom zbiorczym textview?

Czy ktoś może mi powiedzieć, jak mogę to osiągnąć?

Odpowiedz

6

powodując następujący wyjątek.

Jeśli nie zadeklarujesz stanu domyślnego, to selektor nie zadziałał dla mnie. Umieściłem jeden przezroczysty obraz w domyślnym stanie i działa on dla mnie.

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

    <item android:drawable="@drawable/image" android:state_pressed="true"></item> 
    <item android:drawable="@drawable/image" android:state_selected="true"></item> 
    <item android:drawable="@drawable/image" android:state_focused="true"></item> 
    <item android:drawable="@drawable/imagetrans"/> 

</selector> 

Zastosowanie: -

<TextView 
      android:id="@+id/txtobject" 
      android:layout_width="fill_parent" 
      android:layout_height="wrap_content" 
      android:layout_marginBottom="10dp" 
      android:layout_marginTop="10dp" 
      android:clickable="true" 
      android:drawableRight="@drawable/selector" 
      android:focusableInTouchMode="true" 
      android:text="@string/object" 
      android:textSize="25sp" /> 
+3

Drogi straya, próbowałem ale powodując powyżej exception.Your odpowiedź nie działa dla mnie wtedy Jak mogę przyjąć to jako odpowiedź? Jeśli przyjmuję to jako odpowiedź, wiele osób, które używają stackoverflow, zostanie wprowadzonych w błąd przeze mnie. – Hitendra

+4

Drodzy Straya, chcemy pomóc naszej społeczności, więc naszym celem powinna być pomoc społeczności, a nie tylko reputacja. Doceniam twoją pomoc, ale to nie zadziałało. – Hitendra

+0

może spowodować wyjątek na elemencie selektora. I mógłbym użyć '@android: color/transparent' z moim własnym przezroczystym obrazem. Ale nie mogłem wybrać selektora na drawableRight (lub drawableLeft). Skończyło się programowo używać obrazu wyboru, 'sortButton.setCompoundDrawablesWithIntrinsicBounds (0, 0, R.drawable.name, 0);' – chanil

Powiązane problemy