Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to get the position of selected character or String in EditText

I want to know how can I get the x,y position of the selected character or String in EditText. Is that possible?

like image 346
Arun Badole Avatar asked Jun 22 '11 06:06

Arun Badole


2 Answers

Use this code to get the first index of a certain character:

String s = editText.getText().toString();
int position = s.indexOf("C");              // where C is your character to be searched
like image 67
ngesh Avatar answered Nov 01 '22 10:11

ngesh


Here is how to get the x and y coordinates of a specific character in a TextView, should work for EditText as well. offset is the index of the desired character in the view's text.

Layout layout = editView.getLayout();
if (layout == null) { // Layout may be null right after change to the view
    // Do nothing
}

int lineOfText = layout.getLineForOffset(offset);
int xCoordinate = (int) layout.getPrimaryHorizontal(offset);
int yCoordinate = layout.getLineTop(lineOfText);
like image 2
Gibolt Avatar answered Nov 01 '22 11:11

Gibolt