0

说到制作安卓动态壁纸,究竟需要哪些东西呢?到目前为止,我可以概括为 WallpaperService.Engine、SurfaceView、Android.manifest 和 xml/string.xml 中的一些重大变化,除了这个 png drawble(我认为如果我使用绘画,这可能是可选的)。

我还需要为动画的发生开发完全不同的逻辑吗?总是用数学计算吗?我非常热衷于制作不同类型的动态壁纸。但我认为我没有走在正确的轨道上。

请向我建议一些正确的方向,总结我所需要的一切,以便我可以制作任何类型的动态壁纸。

有人可以总结一下动态壁纸需要什么。

提前致谢。

4

2 回答 2

1

嗨,如果您有图像路径,您可以使用此代码。

is = new FileInputStream(new File(imagePath));
bis = new BufferedInputStream(is);
Bitmap bitmap = BitmapFactory.decodeStream(bis);
Bitmap useThisBitmap = Bitmap.createScaledBitmap(
bitmap, parent.getWidth(), parent.getHeight(), true);
bitmap.recycle();
if(imagePath!=null){
System.out.println("Hi I am try to open Bit map");
wallpaperManager = WallpaperManager.getInstance(this);
wallpaperDrawable = wallpaperManager.getDrawable();
wallpaperManager.setBitmap(useThisBitmap);

................................................. 如果你有图像 URI 然后使用它

wallpaperManager = WallpaperManager.getInstance(this);
wallpaperDrawable = wallpaperManager.getDrawable();
mImageView.setImageURI(imagepath);

............. 如果有任何问题,请告诉我。

于 2011-05-18T09:10:51.857 回答
0

是的,您需要对动态壁纸使用与 Android 中的“正常”动画不同的方法。标准方法是制作一个可自动重新调度的可运行文件,该可绘制到画布上。

回答您的一个具体问题:不,您不需要将自己局限于数学计算;如果您愿意,您可以使用位图/精灵,但您需要自己制作动画。

您最好的起点是 SDK 中的资源:
http://developer.android.com/resources/articles/live-wallpapers.html
http://developer.android.com/resources/samples/CubeLiveWallpaper/index.html

于 2011-04-07T21:29:56.913 回答