2011-12-23 10 views
5

Używam odbiornika dotykowego w widoku tekstowym. Mogę uzyskać współrzędne dotykowe za pomocą zdarzenia ruchu.Współrzędne ekranu w widoku tekstowym

Czy mogę uzyskać indeks znaków lub w pobliżu współrzędnych znakowych, w które kliknąłem.

Np., Hello Android

To jest mój tekst. Teraz mogę uzyskać współrzędne xy, ale mogę je odczytać, np. A.

Odpowiedz

12

Trzeba overide onTouch()

Spróbuj z następującym

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

To pomaga mi dużo. zastanawiałem się, jak wyróżnić tekst w tekście. –

Powiązane problemy