gpt4 book ai didi

Android 动态壁纸 - 不显示背景图片?

转载 作者:行者123 更新时间:2023-11-30 04:49:05 25 4
gpt4 key购买 nike

我按照网上找到的例子和教程开始实现android动态壁纸,我不能把png背景作为壁纸。在这里也检查了类似的问题,但仍然无法正常工作。

这是代码:

public class LiveWallpaper extends WallpaperService {

/* IDs of recurces needed for animations*/
private SurfaceHolder holder;
private static final String TAG = "MyActivity";

@Override
public void onCreate() {
super.onCreate();
}

@Override
public void onDestroy() {
super.onDestroy();
}

@Override
public Engine onCreateEngine() {
return new WallpaperEngine();
}

class WallpaperEngine extends Engine {
public final Runnable mDrawWallpaper = new Runnable(){
public void run(){
drawWallpaper();
}
};

@Override
public void onCreate(SurfaceHolder surfaceHolder){
super.onCreate(surfaceHolder);
setTouchEventsEnabled(false);
loadImagesIntoMemory(R.drawable.wallpaper);
holder = getSurfaceHolder();

}

void drawWallpaperContent(Canvas c, int resourceId){
Bitmap decodeResoure = BitmapFactory.decodeResource (getResources(), resourceId);
c.drawBitmap(decodeResoure, 0, 0, null);
}

void drawWallpaper(){
final SurfaceHolder holder = getSurfaceHolder();
Canvas c = null;
c = holder.lockCanvas();

if(c!=null){
c.save();
drawWallpaperContent(c, R.drawable.wallpaper);
c.restore();
}
}

private void loadImagesIntoMemory(int resourceId){
Resources res = getResources();
BitmapFactory.decodeResource(res, resourceId);
}

@Override
public void onDestroy(){
super.onDestroy();
mHandler.removeCallbacks(mDrawWallpaper);
}
}
}

位图存放在drawable文件夹中,android sdk版本为2.2。启动动态壁纸后,我只收到“正在加载壁纸”而没有显示壁纸图像。

有谁知道可能是什么问题?

谢谢。打碟。

最佳答案

在你的抽奖中使用它

' 位图图像 = BitmapFactory.decodeResource(getResources(),R.drawable.image);'

 canvas.drawBitmap(image, 0, 0, paint);

您可以在 paint 参数中传递 null。我正在使用它及其工作

关于Android 动态壁纸 - 不显示背景图片?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4032291/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com