2016-12-08 3 views
0

J'ai un TextView qui contient un DrawableRight, ce que je veux faire est de détecter quand l'utilisateur appuie sur cette icône dans drawableRight, est-ce possible? et si c'est comment puis-je le faire?Android - Détection lorsque l'utilisateur touche un dessin gauche

PS: Je travaille dans un fragment

TextView XML

<TextView 
    android:id="@+id/mTitle" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:textIsSelectable="false" 
    android:textSize="22dp"   
    android:drawableRight="@mipmap/icn" //this is the drawable 
/> 
+0

Beaucoup mieux est d'utiliser un imageview et simplement gérer onClick – Manza

+0

Je suis dans une situation que les forces moi d'utiliser un drawable –

+0

Vous pouvez avoir un parent Linear ou RelativeLayout. mettre ImageView et TextView à l'intérieur comme dit Manza. Cela donnera le même aspect et la même sensation. Et ajouter touchListener à ImageView – Vinodh

Répondre

0
mTitle.setOnTouchListener(new View.OnTouchListener() { 
    @Override 
    public boolean onTouch(View v, MotionEvent event) { 
    final int DRAWABLE_RIGHT = 2; 
    if (event.getAction() == MotionEvent.ACTION_UP) { 
    if (event.getRawX() >= (mTitle.getRight() - mTitle.getCompoundDrawables()[DRAWABLE_RIGHT].getBounds().width())) { 
    //drawable pressed 
    return true; 
     } 
     } 
     return false; 
     } 
    }); 
+0

cela n'a pas fonctionné, je n'obtiens fondamentalement aucune réponse du tout –