我在操作栏中有下拉列表作为导航列表。使用 ActionBar.OnNavigationListener 和 onNavigationItemSelected 来检测用户何时单击了操作栏下拉导航列表中的项目并且工作正常。
但是,如果用户点击了与下拉列表中当前所选项目相同的项目,则 onNavigationItemSelected 未被调用! (我需要这个确切的功能行为让app正常工作)
那么有没有办法检测点击操作栏下拉列表的任何部分?
有没有办法以某种方式引用操作栏中的下拉视图,然后在操作栏中的该下拉列表对象上设置onclicklistner。就像我们在标准布局中使用下拉列表一样?
答案 0 :(得分:1)
此处的问题与任何其他Spinner相同。这里的工作原理清楚地描述在这里:Spinner : onItemSelected not called when selected item remains the same
然而,对于ActionBar,解决方案可能有点棘手(除非您使用 ActionBarSherlock 并且可以明确地弄乱其代码)