2012-02-27 2 views
5

У меня есть одно изображение стрелки на правах textview.so я использую android:drawableRight="@drawable/arrow", и он отлично работает. Но я хочу, чтобы, когда textview находится в выбранном состоянии, мне нужно показать изображение стрелки иначе. Есть ли способ, которым я могу добиться этого с помощью селектора.Можно ли предоставить состояния составным чертежам текста?

может кто-нибудь сказать мне, как я могу это достичь?

ответ

6

вызывает следующее исключение.

Если вы не объявляете состояние по умолчанию, тогда селектор не работал для меня. Так что я поместил одно прозрачное изображение в состояние по умолчанию, и оно работает для меня.

<?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> 

Использование: -

<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

Уважаемый straya, я попробовал <пункт андроида: рисуем = "@ нуль" />, но это вызывает выше exception.Your ответ не работает для меня тогда как я могу принять это как ответ? Если я принимаю это как ответ, то многие люди, которые используют stackoverflow, будут введены в заблуждение. – Hitendra

+4

Уважаемый страйя, здесь мы должны помочь нашему сообществу, поэтому наша цель должна помочь сообществу, а не только репутации. Я ценю вашу помощь, но это не сработало для меня. – Hitendra

+0

может вызвать исключение в элементе селектора. И я мог бы использовать '@android: color/transparent' с моим собственным прозрачным изображением. Но я не мог заставить селектор работать с drawableRight (или drawableLeft). Я закончил использовать программный выбор, 'sortButton.setCompoundDrawablesWithIntrinsicBounds (0, 0, R.drawable.name, 0);' – chanil

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