2013-04-07 72 views
2

我想在屏幕的右上角有一個背景圖像的樣式。我有這個與如何使Android風格的windowBackground容納操作欄

my_theme_background.xml

<?xml version="1.0" encoding="utf-8"?> 
<layer-list xmlns:android="http://schemas.android.com/apk/res/android"> 
    <item> 
     <shape android:shape="rectangle"> 
     <solid android:color="@color/myThemeBackgroundColor" /> 
     </shape> 
</item> 
    <item android:top="70dp"> 
     <bitmap android:src="@drawable/bg_my_theme" 
      android:gravity="top|right" /> 
    </item> 
</layer-list> 

風格

<style name="MyTheme" parent="AppBaseTheme"> 
     <item name="android:windowBackground">@drawable/my_theme_background</item> 
</style> 

工作,我必須利用Android:頂部= 「70DP」,以保持操作欄下的圖像。但操作欄會隨着旋轉而改變高度。如何將圖像保留在xml中的操作欄下而不顯式設置頂部值?

回答

0

我相信你可以通過屬性android.R.attr.actionBarSize來檢索它的高度。例如,對於蜂窩和更高版本:

android:top="?android:attr/actionBarSize" 

或者according to Jake Wharton,爲ActionBarSherlock兼容性:

android:top="?attr/actionBarSize" 
+0

我得到一個錯誤與此說,它不能將其轉換爲一個維度。 – smokingoyster 2013-04-08 13:46:25

+0

您針對哪個SDK級別構建?它是否可以編譯? – 2013-04-08 14:04:54

+0

最小8,目標17。我正在使用actionbar sherlock。該應用程序編譯和運行良好。我明確地設置了樣式中的actionBarSize,並且工作正常。我不能用它作爲最高價值。 – smokingoyster 2013-04-08 14:16:58