How do I launch the soft keyboard after “Cancel” button is clicked in DialogFragment?
Fragment.java文件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | .... public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View rootView = inflater.inflate(R.layout.skyfrag_layout, container, false); getDialog().setTitle("Delete skycard"); Button btnCancel = (Button) rootView.findViewById(R.id.btnCancel); btnCancel.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { getDialog().cancel(); } }); ... |
我在onClick函数中尝试了下面的每一个,但都没有工作。
1)getDialog()。getWindow()。setSoftInputMode(
LayoutParams.SOFT_INPUT_STATE_VISIBLE);
2)InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE))。toggleSoftInput(InputMethodManager.SHOW_FORCED,InputMethodManager.HIDE_IMPLICIT_ONLY);
我猜你正试图再次显示键盘,因为你的对话框关闭后你需要编辑一个小部件。
您是否尝试过调用
(注意:IBinder可以通过yourView.getWindowToken()获得)
希望这可以帮助。