Android OnNavigationListener未被调用

时间:2013-02-03 15:37:04

标签: android-actionbar-compat

我正在使用ActionBarCompat创建一个操作栏。我可以使用ArrayAdapter显示其中的下拉导航列表。但是,我想附加一个OnNavigationListener,这就是我遇到这个问题的地方:它没有任何效果。它只会在我第一次将其附加到操作栏时触发一次。这是我的OnNavigationListener实现:

class RaditazActionBarListener implements ActionBar.OnNavigationListener {
    @Override
    public boolean onNavigationItemSelected(int itemPosition, long itemId) {
        Intent parentActivityIntent = new Intent(ctx, Player.class);
        startActivity(parentActivityIntent);
        return true;
 }

以下是我如何将其附加到我的操作栏:

getActionBar().setListNavigationCallbacks(mySpinnerAdapter, new RaditazActionBarListener());

当我在下拉列表中选择项目时,知道为什么没有触发侦听器?

谢谢, 伊戈尔

1 个答案:

答案 0 :(得分:4)

由于mySpinnerAdapter没有代码,因此难以猜测:

  1. 也许您正在尝试选择已经选择的项目(不会回拨)。
  2. 也许您要选择的项目是列表中唯一的项目(从您的OnNavigationOtemSelected()代码中猜测)
  3. 其他一些可能的原因