如何在用户完成输入后 select editText 中的所有文本?
How do I select all the text in an editText after the user is finished typing in it?
我有一个 EditText,里面有一些虚拟文本。当用户完成输入时,我希望能够选择所有文本。
我怎样才能做到这一点?
你可以使用 Rx 的 debounce 来做到这一点,
RxTextView.textChanges(editText)
.debounce(3, TimeUnit.SECONDS)
.subscribe { textChanged: CharSequence? ->
Log.d(
"TAG",
"Stopped typing!"
)
editText.selectAll()
}
为您的编辑文本创建一个引用:
EditText editText = (EditText) findViewById(/* edittext id */);
在其上附加一个文本更改监听器:
editText.addTextChangedListener(new TextWatcher() {
@Override
public void afterTextChanged(Editable s) {
//get your final string here
String str = s.toString();
}
@Override
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {}
});
我有一个 EditText,里面有一些虚拟文本。当用户完成输入时,我希望能够选择所有文本。
我怎样才能做到这一点?
你可以使用 Rx 的 debounce 来做到这一点,
RxTextView.textChanges(editText)
.debounce(3, TimeUnit.SECONDS)
.subscribe { textChanged: CharSequence? ->
Log.d(
"TAG",
"Stopped typing!"
)
editText.selectAll()
}
为您的编辑文本创建一个引用:
EditText editText = (EditText) findViewById(/* edittext id */);
在其上附加一个文本更改监听器:
editText.addTextChangedListener(new TextWatcher() {
@Override
public void afterTextChanged(Editable s) {
//get your final string here
String str = s.toString();
}
@Override
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2, int arg3) {}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {}
});