2011-12-23 20 views
5

Estoy usando el oyente táctil en la vista de texto. Puedo obtener las coordenadas táctiles a través del evento de movimiento.Toque las coordenadas en la vista de texto

¿Puedo obtener el índice del personaje o cerca de las coordenadas del personaje en el que hice clic.

Ej., Hello Android

Este es mi texto. Ahora puedo obtener las coordenadas x y, pero puedo obtener el índice de caracteres, digamos A, cuando lo toco.

Respuesta

12

Tienes que overide onTouch()

Pruebe con la siguiente

public boolean onTouch(View v, MotionEvent event) { 
     // TODO Auto-generated method stub 
     Layout layout = ((TextView) v).getLayout(); 
      int x = (int)event.getX(); 
      int y = (int)event.getY(); 
      if (layout!=null){ 
       int line = layout.getLineForVertical(y); 
       int characterOffset = layout.getOffsetForHorizontal(line, x); 
       Log.i("index", ""+characterOffset); 
       } 
      return true; 


    } 
+0

esto me ayuda mucho. he estado buscando cómo resaltar el texto en la vista de texto. –

Cuestiones relacionadas