1

我正在使用 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());

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

谢谢,伊戈尔

4

1 回答 1

4

由于没有代码mySpinnerAdapter很难猜测:

  1. 也许您正在尝试选择一个已经选择的项目(这不会给出回调)。
  2. 也许您尝试选择的此项是列表中唯一的一项(根据您的OnNavigationOtemSelected()代码猜测)
  3. 一堆其他可能的原因
于 2013-03-07T10:16:08.797 回答