我创建了一个动态壁纸。我想让onTouchEvent()在触摸事件位置绘制动画或从一个PNG文件转换到另一个PNG文件。到目前为止,我能够在该位置绘制一个PNG文件,但我无法使转换工作。
以下是我目前用于尝试将淡入淡出从一个图像设置为另一个图像的代码:
void drawTouchPoint(Canvas c) {
if (mTouchX >=0 && mTouchY >= 0) {
TransitionDrawable td = new TransitionDrawable(new Drawable[] {getResources().getDrawable(R.drawable.pipe_logo), getResources().getDrawable(R.drawable.pipe_logo_blank)});
td.setBounds(mTouchX, mTouchY, mTouchX + 100, mTouchY + 100);
td.setCrossFadeEnabled(true);
td.startTransition(3000);
td.draw(c);
}
}
上面的代码只绘制pipe_logo图像。我试过反转顺序,然后只绘制pipe_logo_blank图像。我觉得我很接近这个,只是错过了一些简单的东西。任何帮助将不胜感激。
注意:我发现了许多使用动画的示例,但它们都需要一个视图,如ImageView。在这种情况下,因为我使用的是动态壁纸,所以我没有可用的视图。