2011-04-10 67 views
0

我想顯示一個靜態背景圖片(排序的應用程序的背景),並發現這可以通過使用我的FrameLayout中的「android:background」選項或內部onDraw()方法通過canvas.drawBitmap()在每個條目處完成。遊戲的Android靜態背景選項

有人可以解釋一下使用這些方法和提供更好性能的區別嗎?

TIA

回答

2
<resources> 
    <style parent="android:Theme.NoTitleBar" name="Theme.BG"> 
     <item name="android:windowBackground">@drawable/background_image</item> 
    </style> 
</resources> 

我寫了一個風格與這個屬性,並應用到通過該清單整個應用程序。 我延長了NoTitleTheme,您可以在android系統

<application android:theme="@style/Theme.BG" android:label="@string/app_name" 
android:icon="@drawable/app_iconicon"> 

擴展任何的默認主題這是很容易應用背景的整個應用程序的最有效方法..

設置背景各的FrameLayout意味着寫更多的代碼。在onDraw中執行它需要擴展視圖或其他組件。您可以通過這些方法設置背景,但應用程序的窗口背景仍然繪製。但是當你像上面那樣設置窗口backgorund時,默認背景不會被繪製,並且可能會節省編寫更多代碼的複雜性。

+0

嗯......謝謝。但是,這不適用於整個應用程序的背景嗎?即如果有多項活動,這不適用於所有這些活動嗎? (對不起,如果這是一個noob問題) – 2011-04-10 10:35:16

+0

是的當然,這將適用於整個應用程序,即所有的活動..如果你想這適用於特定的活動,那麼你可以簡單地將主題屬性的要求而不是清單中的 Varun 2011-04-10 10:45:08

+0

好了(只讀了Manifest之後,我讀了:#)。那麼無論如何要衡量每個選項的表現差異嗎? – 2011-04-10 10:48:48