我尝试设置一个自定义标题栏包含微调器对象,但每次它给我一个名为的例外“你不能将自定义标题与其他标题功能组合”。我按网站搜索找到一个解决方案网站,并且我按照网络上的说明正确地做了一切,但异常从未消失。我心中有一个非常愚蠢的问题,它可能与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...
}
}
);
答案 0 :(得分:7)
Android 3.0+上使用的操作栏被视为标题功能,如果您使用其中一个Holo主题,则默认情况下您的活动将获得一个。 (Theme.Holo,Theme.Holo.Light等)Theme.Holo是targetSdkVersion="11"
或更高版本的应用的默认设置。较旧的“自定义标题栏”功能无法与操作栏结合使用,但您可以使用操作栏来执行此操作。
使用操作栏的列表导航模式,使用ActionBar#setNavigationMode
和ActionBar#setListNavigationCallbacks
进行设置,以指定将提供微调器视图的适配器。