public class AnimationView extends SurfaceView implements Callback {
Context ctxt = null;
Canvas canvas = null;
Paint paint = null;
SurfaceHolder surfaceHolder = null;
Bitmap bitmap01 = null;
Bitmap bitmap02 = null;
boolean isStop = false;
MyThread thread = null;
int backY01 = 0;
int backY02 = 0;
int screenWidth = 0;
int screenHeight = 0;
public AnimationView(Context context, int width, int height) {
super(context);
ctxt = context;
this.screenWidth = width;
this.screenHeight= height;
paint = new Paint();
surfaceHolder = this.getHolder();
surfaceHolder.addCallback(this);
bitmap01 = ReadBitMap(ctxt,R.drawable.map_0);
bitmap02 = ReadBitMap(ctxt,R.drawable.map_1);
backY01 = 0;
backY02 = -screenHeight;
}
class MyThread extends Thread{
@Override
public void run() {
while (isStop) {
long startTime = System.currentT
surfaceview背景图片
最新推荐文章于 2022-03-08 16:57:47 发布
AnimationView是一个自定义的SurfaceView,它加载两张背景图片并实现上下滚动的动画效果。通过SurfaceHolder添加回调,创建自定义线程(MyThread)进行绘制。在run方法中,以200ms为间隔不断更新并绘制背景图片,当图片滚动到屏幕底部时会复位到顶部,实现了无缝滚动的视觉效果。
摘要由CSDN通过智能技术生成