Skip to content Skip to sidebar Skip to footer

Android - Get Selection Of Text From Edittext

I'm trying to implement a copy/paste function. How can I get a selection of text from an EditText? EditText et=(EditText)findViewById(R.id.title); blabla onclicklistener on a butt

Solution 1:

Seems like you've already done the hard part by finding what the selected area is. Now you just need to pull that substring out of the full text.

Try this:

StringselectedText= et.getText().substring(startSelection, endSelection);

It's just a basic Java String operation.

Solution 2:

You should use a special function from the Editable object:

Editabletxt= et.getText();
txt.replace(int st, int en, CharSequence source)

This command replaces the part specified with (st..en) with the String (CharSequence).

Solution 3:

you don't need to do all this, just long press on edit text it will show you all relevant options to Copy/Paste/Select etc. If you want to save the text use the method shown by mbaird

Solution 4:

String selectedText = et.getText().toString().substring(startSelection, endSelection); getText() returns an editable. substring needs a String. toString() connects them properly.

Solution 5:

You can do it this way to get the selected text from EditText:

EditText editText = (EditText) findViewById(R.id.editText3);
intmin = 0;
intmax = editText.getText().length();
if (editText.isFocused()) {
    final int selStart = editText.getSelectionStart();
    final int selEnd = editText.getSelectionEnd();
    min = Math.max(0, Math.min(selStart, selEnd));
    max = Math.max(0, Math.max(selStart, selEnd));
}
// here is your selected text
final CharSequence selectedText = editText.getText().subSequence(min, max);
String text = selectedText.toString();

Post a Comment for "Android - Get Selection Of Text From Edittext"