我正在使用导航抽屉示例downloadable here。
我想扩展此示例以禁用其中一个行星的选择。为简单起见,假设我想永久禁用土星的选择,并将土星的文本更改为深灰色,并在用户选择它时不要突出显示。 (实际上,当用户更改屏幕上尚未保存到设备的某些值时,我想以编程方式禁用导航)。
我最接近的就是阻止selectItem()
方法在onItemClick
点击监听器中被调用,但即使我这样做,问题仍然存在 - “当用户点击它时,土星“仍然可以选择并突出显示。
我需要更改小部件的哪一部分以防止突出显示土星文本? 我试过改变
mDrawerLayout.setClickable(false);
mDrawerList.setClickable(false);
但这些选项似乎都没有任何影响。
有关如何解决此问题的任何建议或想法? 一些有用的笔记:
答案 0 :(得分:4)
我想扩展这个例子来禁用其中一个行星的选择
创建自己的ArrayAdapter
子类,覆盖areAllItemsEnabled()
以返回false
,isEnabled()
根据需要返回true
或false
。