Android 实时壁纸中的ImageView动画

Android 实时壁纸中的ImageView动画,android,imageview,android-relativelayout,wallpaper,android-framelayout,Android,Imageview,Android Relativelayout,Wallpaper,Android Framelayout,(安卓) 我正在将一个全屏模拟时钟应用程序改编成一张实时壁纸。 该应用程序使用三个独立的ImageView进行小时、分钟、秒和RotateAnimation 我一直在寻找一种在实时壁纸中使用ImageView的方法。并指出这应该可以通过measure()和layout()实现,但是 我真的不知道如何使用它。 例如,我使用下面的代码将clock\u background.png加载到ImageView中 public class MyWallpaperService extends Wallpap

(安卓) 我正在将一个全屏模拟时钟应用程序改编成一张实时壁纸。 该应用程序使用三个独立的
ImageView
进行小时、分钟、秒和
RotateAnimation

我一直在寻找一种在实时壁纸中使用ImageView的方法。并指出这应该可以通过
measure()
layout()
实现,但是 我真的不知道如何使用它。 例如,我使用下面的代码将
clock\u background.png
加载到
ImageView

public class MyWallpaperService extends WallpaperService {
    @Override
    public Engine onCreateEngine() {
        return new MyWallpaperEngine();
    }
    ....
    public void onCreate(SurfaceHolder surfaceHolder) {
        super.onCreate(surfaceHolder);
        mContext = getBaseContext();
        backgroundImage = new ImageView(mContext);
        backgroundImage.setImageDrawable(mContext.getResources().getDrawable(R.drawable.clock_background));
    }
}
后来我有:

backgroundImage.measure(MeasureSpec.UNSPECIFIED, MeasureSpec.UNSPECIFIED);
backgroundImage.layout(0, 0, 150, 150);
我希望上面的代码将显示
clock\u background.png
在 屏幕。我试图将上面的两行放在
OnSurfaceCreated
OnSurfaceChanged
中。不幸的是,它不起作用。 据我所知,LiveWallper提供了一个表面(而不是SurfaceView),人们可以从中获得 画布上画东西。 我为自己在安卓的新手身份道歉:我做错了吗?我只是不想 乱搞
drawBitmap
之类的东西,反正我也不在乎电池。
非常感谢您的帮助。多谢各位

我认为,是的,你做错了。
使用提供的画布及其drawX()方法

谢谢!但我正在寻找一种方法来避免画布和绘图。正如我所提到的,这种方法确实存在,但可能并不可取。当推荐某人使用另一种方法时,它会很有用,可以为如何使用它获得期望的结果提供一些指导。