Android中使用系统桌面背景作为应用背景,支持拖动

在Android开发中,通过将应用背景设为透明并添加FLAG_SHOW_WALLPAPER标志,可以显示系统桌面背景。文章详细介绍了如何修改AndroidManifest.xml以实现透明背景,并讲解了WallpaperManager的setWallpaperOffsetSteps和setWallpaperOffsets方法在壁纸拖动过程中的应用,这两个方法用于设置壁纸在多屏幕或多窗口环境下的位置。
摘要由CSDN通过智能技术生成

在Android应用开发中,使用系统桌面背景作为应用的背景,需要把应用的背景设置为透明背景,然后设置窗口的属性为FLAG_SHOW_WALLPAPER即可显示背景。

修改AndroidManifest.xml文件里面activity属性:

 

        <activity android:name=".WallPaperTest"

                  android:label="@string/app_name"

                  android:theme="@android:style/Theme.Translucent">

然后在使用的时候,在onCreate里面添加一个窗口属性

getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WALLPAPER);

 

在背景拖动的时候主要是使用了WallpaperManager这个类的两个方法

 

public void setWallpaperOffsetSteps (float xStep, float yStep)
Since:  API Level 7

For applications that use multiple virtual screens showing a wallpaper, specify the step size between virtual screens. For example, if the launcher has 3 virtual screens, it would specify an xStep of 0.5, since the X offset for those screens are 0.0, 0.5 and 1.0

Parameters
xStep The X offset delta from one screen to the next one
yStep The Y offset delta from one screen to the next one

public void setWallpaperOffsets (IBinder windowToken, float xOffset, float yOffset)
Since:  API Level 5

Set the position of the current wallpaper within any larger space, when that wallpaper is visible behind the given window. The X and Y offsets are floating point numbers ranging from 0 to 1, representing where the wallpaper should be positioned within the screen space. These only make sense when the wallpaper is larger than the screen.

Parameters
windowToken The window who these offsets should be associated with, as returned by View.getWindowToken().
xOffset The offset along the X dimension, from 0 to 1.
yOffset

The offset along the Y dimension, from 0 to 1.

 

修改了之前ScrollLayout的类,让它支持显
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值