我有一個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