2011-06-23 65 views
3

我在ActionBar中使用導航控件來提供下拉列表。我想在某些情況下禁用選擇下拉列表。可以禁用ActionBar下拉導航列表控件嗎?

我對微調適配器的封閉視圖的佈局有一個TextView裹在LinearLayout。我想到的最好的方法是在我的微調器適配器中覆蓋getView,並使LinearLayoutTextView不可點擊和禁用。這具有使文本變灰的效果,但仍然可以選擇。

編輯我明白我可以隱藏列表,但這不是我想要做的。此外,我在檢查一個或所有項目是否啓用的方法中返回了false,但這不起作用。

試圖在Xoom上使用Honeycomb。提前致謝。彼得。

回答

11

如果要防止在列表導航模式中選擇任何內容,請撥打setNavigationMode(NAVIGATION_MODE_STANDARD)並完全清除,直到您準備好再次使用它爲止。

如果你想阻止列表導航模式下的特定項目的選擇,讓您的SpinnerAdapter實施areAllItemsEnabled()回到false和實施isItemEnabled()返回truefalse需要 - 我還沒有嘗試這樣做,但在理論上它應該管用。

+0

設置各種啓用方法返回false不起作用。我已經更新了相應的問題。 – PJL

+1

@PJL:那麼我懷疑你想要什麼是不可能的。 – CommonsWare

+0

我用這段代碼隱藏/顯示列表,當用戶點擊thesearchWidget,否則它會調整我的列表損壞佈局:) – max4ever

0

您可以創建出象這樣在你的動作條的自定義視圖:

ViewGroup customFilterBrowse = (ViewGroup) getLayoutInflater().inflate(R.layout.component_cancellable_progressbar, null);  
    ActionBar actionBar = getActionBar(); 
    actionBar.setCustomView(customFilterBrowse); 
    actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_HOME | ActionBar.DISPLAY_SHOW_CUSTOM); 

您可以自定義視圖做任何你想要的(你可以創建你在某些情況下,禁用例如Spinner組件)。

HTH

+0

謝謝。不再在這個領域工作(不再是一個要求),但會在某個時候嘗試這個,以接受答案。 – PJL

相關問題