簡體   English   中英

在Android中禁用導航抽屜中的項目

[英]Disabling items in a Navigation Drawer in Android

我在這里使用可下載的導航抽屜示例。

我想擴展這個例子來禁用其中一個行星的選擇。 為簡單起見,假設我想永久禁用土星的選擇,並將土星的文本更改為深灰色,並在用戶選擇它時不要突出顯示。 (實際上,當用戶更改屏幕上尚未保存到設備的某些值時,我想以編程方式禁用導航)。

我得到的最接近的是停止從onItemClick點擊監聽器中調用selectItem()方法,但即使我這樣做仍然存在問題 - “土星”的文本仍然可以選擇並突出顯示用戶點擊它。

我需要更改小部件的哪一部分以防止突出顯示土星的文本?
我試過改變

mDrawerLayout.setClickable(false);
mDrawerList.setClickable(false);

但這些選項似乎都沒有任何影響。

關於如何處理這個問題的任何建議或想法? 一些有用的筆記:

  1. 我知道,或者我可以設置抽屜鎖定模式以防止導航抽屜被打開,但這比使導航動作變灰更不直觀
  2. 這里更合適的做法是從列表中刪除目前無法訪問的項目嗎? 與此處刪除ListView實現中描述的類似? 這樣做的最大缺點是我可能不得不更改listview來描述為什么暫時從這個列表中刪除項目。

我想擴展這個例子來禁用其中一個行星的選擇

創建自己的ArrayAdapter子類,在其中覆蓋areAllItemsEnabled()以返回false並且isEnabled()根據需要返回truefalse

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM