我正在使用ActionBarSherlock庫來獲取預蜂窩版本上的操作欄。我有其動作條菜單從下面的XMLAndroid:ActionView摺疊按回按鈕
menu.xml文件充氣活性
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/action_bar_search"
android:icon="@drawable/ic_search"
android:showAsAction="always|collapseActionView" android:title="Search"
android:actionLayout="@layout/layout_search">
</item>
</menu>
下面是actionLayout
> layout_search.xml
<?xml version="1.0" encoding="utf-8"?>
<AutoCompleteTextView xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/autoCompText_action_bar_search"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:cursorVisible="true"
android:imeOptions="flagNoExtractUi"
android:inputType="text"
android:textColor="@color/color_action_bar_text"
android:textCursorDrawable="@android:color/black"
android:background="@drawable/textfield_bg_activated_holo_dark"
/>
我還實施了OnActionExpandListener來收聽展開和摺疊 菜單項目的事件。下面是我實現OnActionExpandListener
private OnActionExpandListener searchActionExpandListener = new OnActionExpandListener() {
@Override
public boolean onMenuItemActionExpand(MenuItem item) {
/* This is done so that requestFocus() can popup the softkeyboard.
* Else, no softkeyboard is popped up
*/
edtTextSearch.post(new Runnable() {
@Override
public void run() {
edtTextSearch.requestFocus();
mImm = (InputMethodManager) getSystemService(Context.INPUT_METHOD_SERVICE);
mImm.showSoftInput(edtTextSearch, InputMethodManager.SHOW_IMPLICIT);
}
});
return true;
}
@Override
public boolean onMenuItemActionCollapse(MenuItem item) {
mImm.hideSoftInputFromWindow(edtTextSearch.getWindowToken(), 0);
return true;
}
};
所以現在,在按壓動作搜索按鈕欄的actionLayout顯示和softkeyboard被彈出,以及重點就可以了。所有工作都很好,直到現在但是當我按下後退鍵(手機上的硬鍵)時,操作視圖會崩潰。我想要做的就是按下後退鍵隱藏軟鍵盤(如果正在顯示),而不是摺疊操作視圖。任何人都可以請幫我嗎?
您好Viren,你也應該看看我的答案類似的問題:[上下文ActionBar隱藏,當我點擊硬件後退和鍵盤輸出](http:///stackoverflow.com/a/23122941/2668136),它可能會幫助你。 – Fllo 2014-04-19 14:28:28
感謝Filo的積極響應。您的鏈接給了我一個全新的視角 – Viren 2014-04-19 19:30:58
很高興幫助!這很奇怪,因爲我從未在我的項目中看到過這種行爲。我會做一些測試,以便知道我的錯在哪裏。無論如何,我希望這會幫助你。良好的編碼。 – Fllo 2014-04-19 19:37:44