我在ActionBar中使用导航控件来提供下拉列表。我想在某些情况下禁用选择下拉列表。
我的微调器适配器关闭视图的布局包含TextView
LinearLayout
。我提出的最好的方法是在我的微调器的适配器中覆盖getView
并使LinearLayout
和TextView
不可点击和禁用。这会使文本变灰,但仍然可以选择它。
编辑我很欣赏我可以隐藏列表,但这不是我想要做的。此外,我在方法中返回false,检查是否启用了一个或所有项目,但这不起作用。
尝试在Xoom上使用Honeycomb。提前致谢。彼得。
答案 0 :(得分:11)
如果您想阻止在列表导航模式中选择任何内容,请致电setNavigationMode(NAVIGATION_MODE_STANDARD)
并完全删除它,直到您准备好再次使用它为止。
如果您想阻止在列表导航模式中选择特定项目,请让SpinnerAdapter
工具areAllItemsEnabled()
返回false
并实施isItemEnabled()
以返回{{1或者true
根据需要 - 我没有尝试过这个,但理论上它应该可行。
答案 1 :(得分:0)
您可以在ActionBar中创建自定义视图,如下所示:
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