2016/07/02

Android 使用系統桌布 Wallpaper 當作 App 背景

Android 要把系統桌布當作 App 背景,

需要符合以下三個條件 :

1) 在 AndroidManifest.xml 中, activity 屬性增加 android:theme="@android:style/Theme.Wallpaper" 設定, 如下圖 :
(p.s. 這個沒有設定, Activity 背景為黑色)
(p.s. Theme.Wallpaper 是 Android 3.0 (SDK 8) 以上才有的功能, 也就是 Android 2.x 請外掛 android-support-v4.jar 才有支援)



2) Activity 的 Layout 必須設定為透明 (0x00FFFFFF) 或半透明 (0xD0FFFFFF), 如下圖 :
(p.s. 這個沒有設定, Activity 背景會被 Layout 遮住, 而無法顯示系統桌布)


3) Activity 在 onCreate Event 中, 執行 getWindow().addFlags( WindowManager.LayoutParams.FLAG_SHOW_WALLPAPER ); 程式, 如下圖 :


範例結果, 如下 :