最近接到一个需求,进界面的时候 让ExitText显示上次退出时的内容并选中。
进入activity自动弹出软键盘。
然后,楼主就先设置了选中效果
searchEditText.setText(searchStr);//设置文字
searchEditText.selectAll();//设置全选中
然后,onCreate里,延迟500毫秒定时器弹出输入法
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
boolean inSearchActivity = SearchManager.getInstance(null).isInSearchActivity();
if (inSearchActivity){
InputMethodManager imm = (InputMethodManager)getSystemService(INPUT_METHOD_SERVICE);
imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
searchEditText.selectAll();//全选放在软键盘弹出来之后,否则隐藏软键盘,全选内容被清空
}
}
}, 500);
结果,软键盘隐藏的时候,输入框选中的内容被清空了~!!!wtf~~~
然后居然走的是onTextChange,,,,,(搜狗输入法浮现该现象,原生输入法没有该问题)
后来挣扎了许久,在软键盘弹出来之后再设置选中就ok了。。。。。难受。。
后记:不知道说啥,瞎写的