Android在View中的动画
使用Runnable产生新线程
使用postInvalidate进行刷新
package com.hu.move;
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.view.View;
public class MoveView extends View implements Runnable{
private int y;
private Paint paint;
public MoveView(Context context) {
super(context);
paint=new Paint();
paint.setColor(Color.GREEN);
paint.setAntiAlias(true);
new Thread(this).start();//启动线程
}
@Override
protected void onDraw(Canvas canvas) {//画图
super.onDraw(canvas);
canvas.drawLine(0, 0, 300, y, paint);
}
public void run() {//新线程
while(y<400){
y++;
try {
Thread.sleep(100);
} catch (InterruptedException e) {
e.printStackTrace();
}
MoveView.this.postInvalidate();//非UI线程进行刷新
}
}
}
更多相关文章
- android
- android 获取IP
- 关于android主线程不能访问网络异常NetworkOnMainThreadExceptio
- kotlin 开发 android 程序中网络http请求和线程的使用
- android 多线程 — IntentService
- Watchdog 工作机制解析
- android AsyncTask
- Android(安卓)APK 反编译工具
- 【Android策略】The content of the adapter has changed but Li