我有一个AutoCompleteTextView作为Collabsible ActionItem,并且我希望键盘在它被展开和聚焦时显示。这是我在onCreateOptionsMenu(代码):Android:AutoCompleteTextView作为Collabsible ActionItem键盘未在焦点上显示
menu.add("Search")
.setIcon(R.drawable.ic_search)
.setActionView(R.layout.collapsible_edittext)
.setShowAsAction(
MenuItem.SHOW_AS_ACTION_ALWAYS
| MenuItem.SHOW_AS_ACTION_COLLAPSE_ACTION_VIEW);
final MenuItem searchMenuItem = menu.getItem(0);
searchMenuItem.setOnActionExpandListener(new OnActionExpandListener() {
@Override
public boolean onMenuItemActionExpand(MenuItem item) {
AutoCompleteTextView autoCompleteTextView = (AutoCompleteTextView) item
.getActionView();
autoCompleteTextView
.setOnFocusChangeListener(new OnFocusChangeListener() {
@Override
public void onFocusChange(View v, boolean hasFocus) {
Log.d(TAG, "onFocusChange: " + hasFocus);
if (hasFocus) {
mInputManager.showSoftInput(v,
InputMethodManager.SHOW_FORCED);
} else {
mInputManager.hideSoftInputFromWindow(
v.getWindowToken(), 0);
}
}
});
autoCompleteTextView.requestFocus();
return true;
}
@Override
public boolean onMenuItemActionCollapse(MenuItem item) {
AutoCompleteTextView autoCompleteTextView = (AutoCompleteTextView) item
.getActionView();
autoCompleteTextView.clearFocus();
autoCompleteTextView.setText("");
return true;
}
});
当我在ActionItem单击第一次,没有keybord所示。在折叠后,然后单击该项目上的键盘显示。但是我希望在用户第一次点击操作项时显示键盘。 我正在使用ActionBarSherlock,如果重要的话。 那么为什么键盘在第一次扩展时没有显示?有任何想法吗?
它的工作。 。 谢谢 – 2012-04-18 17:11:05