这两篇文章写得早了,我现在将其改成了Markdown格式,排版能好看些。
看这里的:http://blog.csdn.net/mennoa/article/details/46684537
//自动弹出软键盘
edtsearch_title = (EditText) findViewById(R.id.edtsearch_title);
edtsearch_title.setFocusable(true);imm.toggleSoftInput(InputMethodManager.SHOW_FORCED, InputMethodManager.HIDE_IMPLICIT_ONLY);
// 关闭软键盘
方法1:
((InputMethodManager) getSystemService(INPUT_METHOD_SERVICE))
.hideSoftInputFromWindow(
getCurrentFocus().getWindowToken(),
InputMethodManager.HIDE_NOT_ALWAYS);
方法2:
InputMethodManager imm = (InputMethodManager) view.getContext()
.getSystemService(Context.INPUT_METHOD_SERVICE);
if (imm.isActive()) {
imm.hideSoftInputFromWindow(view.getApplicationWindowToken(),
0);
//如何获取软键盘的高度
final RelativeLayout myLayout = (RelativeLayout)findViewById(R.id.rootview);
myLayout.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
/**
* the result is pixels
*/
@Override
public void onGlobalLayout() {
Rect r = new Rect();
myLayout.getWindowVisibleDisplayFrame(r);
int screenHeight = myLayout.getRootView().getHeight();
int heightDifference = screenHeight - (r.bottom - r.top);
Log.e("Keyboard Size", "Size: " + heightDifference);
//boolean visible = heightDiff > screenHeight / 3;
}
});
//参考
http://stackoverflow.com/questions/13534365/getting-the-dimensions-of-the-soft-keyboard
http://stackoverflow.com/questions/18435112/how-to-get-android-soft-keyboard-height