0

我正在嘗試向我的應用程序添加一個動作欄。以下是我當前應用程序UI的屏幕截圖。將動作欄添加到默認主題

enter image description here

我使用的是默認的主題,因此操作欄將不會顯示。所以我正在使用操作欄的主題。當我使用主題時,我的UI會變得混亂。日期選擇器改變其風格。下面是一個例子,如何顯示操作欄。

enter image description here

下面是XML代碼包含操作欄項目。

<?xml version="1.0" encoding="utf-8"?> 
<menu xmlns:android="http://schemas.android.com/apk/res/android"> 

<item android:id="@+id/action_search" 

    android:title="Search" 
    android:showAsAction="always|withText"/> 


<!-- Refresh --> 
<item android:id="@+id/action_refresh" 

    android:title="Refresh" 
    android:showAsAction="ifRoom" /> 

<!-- Help --> 
<item android:id="@+id/action_help" 

    android:title="Help" 
    android:showAsAction="never"/> 

<!-- Check for updates --> 
<item android:id="@+id/action_check_updates" 

    android:title="Check for Updates" 
    android:showAsAction="never" /> 
</menu> 

下面爲主題,正在使用的應用程序中進行操作欄是可見的。

android:theme="@android:style/Theme.Holo.Light.DarkActionBar" 

是否有將操作欄添加到我的默認主題?

謝謝。

+1

你看到什麼是正確的行爲,你可以使用一個不同的主題,這樣的事情看起來不同。 也使用'Theme.Holo'是一個老主題,你應該使用'Theme.Material'作爲所有的例子,你會發現將使用它的主題/ UI元素 – tyczj

回答

1

這是因爲您使用的是Theme.Holo.Light,這給您一個淺色的背景。您可以嘗試@android:style/Theme.Material,如圖[這裏(https://developer.android.com/training/material/theme.html),但需要使用API​​ 21.否則,你可以嘗試:

<style name="CustomDarkTheme" parent="@android:style/Theme.Holo"> 
    <item name="android:actionBarStyle">@android:style/Widget.Holo.ActionBar.Solid</item> 
</style>