页面中弹出Dialog 并且软键盘随着弹出
今天在项目中用到弹出dialog的同时,软键盘随之弹出,
sweetdialog .show();方法后调用:
sweetdialog.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_VISIBLE);//显示软键盘
InputMethodManager imm = (InputMethodManager)getActivity().
getSystemService(getActivity().INPUT_METHOD_SERVICE);
imm.toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS); //显示软键盘
打开activity的同时启动软键盘:
第一种方法:
((InputMethodManager)getSystemService(getActivity().INPUT_METHOD_SERVICE)).toggleSoftInput(0, InputMethodManager.HIDE_NOT_ALWAYS);
edittext.requestFocus();
第二种方法:
通过handler启动:
private void showKeyboard(){
InputMethodManager inputMethodManager = (InputMethodManager) getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
inputMethodManager.showSoftInput(sweetdialog.getTitleText(), 0);
}
private static final int MMMMMM = 666;
private Handler mHandler = new Handler(){
@Override
public void handleMessage(Message msg) {
switch (msg.what){
case MMMMMM:
showKeyboard();
break;
}
}
};
启动方法:
mHandler.sendEmptyMessageDelayed(MMMMMM,300);