在我的单活动应用中,我有一个ViewPager,它有一个PagerTabStrip。假设我有两个标签和两个相应的片段。在片段一(Frag1)上我有一个EditText视图,在片段二(Frag2)上,只有一个没有可编辑文本的列表视图(只是一个CheckedTextViews列表)。
当应用程序启动时,Frag1可见并且焦点位于EditText上,因此会出现软键盘。没问题。但是,当我滑动到另一个选项卡并且Frag2幻灯片进入视图并且Frag1不再可见时,即使可见屏幕(Frag2)上没有任何内容可以编辑,键盘仍然保持不变。即使我检查了Frag2的CheckedTextViews之一,键盘仍然存在。
以编程方式,我如何能够稳健地动态检查这种情况并隐藏键盘?
答案 0 :(得分:0)
您可以在滑动事件中隐藏键盘。将它放在您选择的方法中,或者用于切换片段的任何内容:
EditText myEditText = (EditText) findViewById(R.id.myEditText);
InputMethodManager imm = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(myEditText.getWindowToken(), 0);
希望这有帮助! :d