如何将微调器添加到活动的标题栏?

时间:2011-08-27 16:28:46

标签: android titlebar custom-titlebar

我尝试设置一个自定义标题栏包含微调器对象,但每次它给我一个名为的例外“你不能将自定义标题与其他标题功能组合”。我按网站搜索找到一个解决方案网站,并且我按照网络上的说明正确地做了一切,但异常从未消失。我心中有一个非常愚蠢的问题,它可能与android 3.0有关吗?我正在开发3.0版(蜂窝)。我不知道该怎么做。

谢谢adamp,我是在你的指导下完成的。这是一个带有微调器示例的简单操作栏。可能会帮助面临类似问题的人。

    super.onCreate(savedInstanceState);
    setContentView(R.layout.screens);
    ActionBar bar = getActionBar();
    bar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
    bar.setListNavigationCallbacks(new SpinnerAdapter(this, android.R.layout.simple_dropdown_item_1line, EczaneMgr.getInstance(this).getEczaneListAsSpinner()),
            new OnNavigationListener() {
          @Override
          public boolean onNavigationItemSelected(int position, long itemId) {
            Log.e("item position",String.valueOf(position));
            return true;
            //do whatever want to do...
          }
        }
    );

1 个答案:

答案 0 :(得分:7)

Android 3.0+上使用的操作栏被视为标题功能,如果您使用其中一个Holo主题,则默认情况下您的活动将获得一个。 (Theme.Holo,Theme.Holo.Light等)Theme.Holo是targetSdkVersion="11"或更高版本的应用的默认设置。较旧的“自定义标题栏”功能无法与操作栏结合使用,但您可以使用操作栏来执行此操作。

使用操作栏的列表导航模式,使用ActionBar#setNavigationModeActionBar#setListNavigationCallbacks进行设置,以指定将提供微调器视图的适配器。