我试过了android:selectAllOnFocus,当然我也在使用android:hint。应用程序加载后,requestFocus触发并选择了整个文本。
问题是当我点击EditText时,选择就消失了。
我已经阅读了以下内容:在EditText获得焦点时选择其中所有的文本。
问题是当我点击EditText时,选择就消失了。
我已经阅读了以下内容:在EditText获得焦点时选择其中所有的文本。
由于某些原因,只有在使用Handler发布时才能在Jelly Bean上正常工作:
new Handler().post(new Runnable() {
@Override
public void run() {
paidView.selectAll();
}
});
在 View.OnClickListener
中设置选择,如下所示:
editText.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
editText.setSelection(0, editText.getText().length() - 1);
}
}
-1
这部分。 - ban-geoengineering在View.OnClickListener中设置选择,如下所示:(0和文本长度相反于先前批准的响应)- 这将确保当用户开始输入内容时,内容将被覆盖。
editText.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
editText.setSelection(editText.getText().length() - 1, 0);
}
}
有简单的解决方法:
1)在大多数情况下,长按可以为您完成此操作。
2)如果您已经使用了setSelectAllOnFocus(true)
,您只需要在onClick监听器中加入简单的clearFocus()
和requestFocus()
即可:
etMyEditText.setSelectAllOnFocus(true);
etMyEditText.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
view.clearFocus();
view.requestFocus();
}
});
editText.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
editText.selectAll();
//or this.selectAll();
}
findViewById
之后,按照下面的代码进行操作即可: edtProductPrice.setSelectAllOnFocus(true);
edtProductPrice.requestFocus();
edtProductPrice.selectAll();