/**
* 得到输入框的文字
* @return
*/
public String getKeywordText(EditText edt) {
return edt.getText().toString().trim();
}
/**
* 将焦点移到输入框,弹起输入法
*/
public void focusKeywordView(EditText edt) {
if (edt != null) {
edt.requestFocus();
edt.setSelection(getKeywordText(edt).length());
showInputMethod(edt, true, 500);
}
}
/**
* 弹起输入法
* @param edit
* @param delay
* @param delayTime
*/
private void showInputMethod(final EditText edit, boolean delay, int delayTime) {
if (delay) {
Timer timer = new Timer();
timer.schedule(new TimerTask() {
@Override
public void run() {
InputMethodManager imm = (InputMethodManager) SogouMapApplication.getInstance().getSystemService(
Context.INPUT_METHOD_SERVICE);
if (imm != null) {
imm.showSoftInput(edit, 0);
}
}
}, delayTime);
} else {
InputMethodManager imm = (InputMethodManager) SogouMapApplication.getInstance().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.showSoftInput(edit, 0);
}
}
getKeyWordText(...)是为了得到输入框中的字符串,然后可以将光标定位到最后
<span style="font-size:18px;">showInputMethod(...)是使用TimerTask将输入法弹起,以免阻碍主线程的执行</span>
<span style="font-size:18px;">最后调用focusKeyWordView(...)即可。。。</span>
<span style="font-size:18px;"><img alt="奋斗" src="http://static.blog.csdn.net/xheditor/xheditor_emot/default/struggle.gif" />, 很简单,继续努力。。。
</span>
<span style="font-size:18px;">
</span>