1

我正在开发一种home application适合一个屏幕的替代方案。目前我有一个活动,它具有手机屏幕的高度和宽度,我尝试将默认壁纸设置为背景。

我使用此代码来执行此操作:

getWindow().setBackgroundDrawable(peekWallpaper());

问题是它会拉伸墙纸以使其适合一个屏幕,因此我的墙纸变得完全变平。

我找到了一种解决方法来避免这种情况,我扩展了可绘制类并覆盖了方法 setBounds 以避免拉伸。但是通过这样做,我只能看到壁纸的左上角。所以我想把它放在中心。

我怎样才能做到这一点 ?我做对了吗?

我在 WallpaperManager 类中看到了一些移动壁纸的方法:

setWallpaperOffsetSteps(float xStep, float yStep) 

setWallpaperOffsets (IBinder windowToken, float xOffset, float yOffset)

但是我没有找到任何关于如何使用IBinder参数的代码示例,它对我的​​情况有用吗?

提前谢谢。

4

0 回答 0