我在Android项目中使用常规ActionBar。在onCreate:
protected void onCreate(Bundle savedInstance) {
super.onCreate(savedInstance);
setContentView(R.layout.activity_clientlogin);
getActionBar().show();
getActionBar().setBackgroundDrawable(new ColorDrawable(Color.parseColor("#FF4444")));
....
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu items for use in the action bar
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu_clientlogin, menu);
return super.onCreateOptionsMenu(menu);
}
menu_clientlogin:
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:id="@+id/action_offline_mode"
android:name="@string/offline_mode"
android:showAsAction="always"/>
</menu>
在我添加Navigation Drawer之前,一切都运行良好,我使用了示例项目中的代码。 ActionBar颜色仍然是红色,但所有项目都是不可见的(没有显示文本)。如果我单击ActionBar的右下角,我会看到我选择了一个项目并正确触发了onOptionsItemSelected。
我在项目的所有其他活动中遇到同样的问题。另一个例子(ActionBar颜色以编程方式更改,抽象图也显示):
我的应用程序使用此主题:
<resources>
<!--
Base application theme, dependent on API level. This theme is replaced
by AppBaseTheme from res/values-vXX/styles.xml on newer devices.
-->
<style name="AppBaseTheme" parent="android:Theme.Holo.Light.DarkActionBar">
<!--
Theme customizations available in newer API levels can go in
res/values-vXX/styles.xml, while customizations related to
backward-compatibility can go here.
-->
</style>
<!-- Application theme. -->
<style name="AppTheme" parent="AppBaseTheme">
<!-- All customizations that are NOT specific to a particular API-level can go here. -->
</style>
</resources>