gpt4 book ai didi

android - 我无法让 hideSoftInputFromWindow 工作

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:34:47 28 4
gpt4 key购买 nike

搜索完成后,我尝试隐藏软键盘,但我找不到失败的原因。

我创建如下搜索菜单:

@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {

String[] mSubActionsTitles = getResources().getStringArray(R.array.sub_actions_array);

MenuItem item = menu.add(0, R.id.search, 0, mSubActionsTitles[0]);
searchMenuItem = item;
item.setIcon(android.R.drawable.ic_menu_search);
item.setShowAsAction(MenuItem.SHOW_AS_ACTION_IF_ROOM | MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);

mSearchView = new SearchView(getActivity());
mSearchView.setOnQueryTextListener(this);
mSearchView.setOnCloseListener(this);
mSearchView.setIconifiedByDefault(true);
mSearchView.setQueryHint(getString(R.string.label_tvGivePosition));
item.setActionView(mSearchView);
}

当输入文本时,我启动了一个执行 HTTP 查询的 AsyncTask()。然后,我们收到响应,我在尝试隐藏键盘的地方调用委托(delegate):

public synchronized void sitesLoadingFinish(Integer result) {

searchMenuItem.collapseActionView();
View view = activity.getCurrentFocus();
view.clearFocus();
InputMethodManager imm = (InputMethodManager)getActivity().getSystemService(Context.INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}

所以 searchMenuItem.collapseActionView() 很好地折叠,没问题,但我无法关闭软键盘。

最佳答案

View view = activity.getCurrentFocus();
view .postDelayed(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
InputMethodManager keyboard = (InputMethodManager)getSystemService(Context.INPUT_METHOD_SERVICE);
keyboard.hideSoftInputFromWindow(view, 0);
}
},50);

关于android - 我无法让 hideSoftInputFromWindow 工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41612067/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com