package com.easing.test;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.graphics.Path;
import android.graphics.Typeface;
import android.util.AttributeSet;
import android.view.View;
import com.easing.commons.android.format.TimeUtil;
import com.easing.commons.android.service.BitmapUtil;
import com.easing.commons.android.service.ViewUtil;
import com.easing.commons.android.value.ColorUtil;
public class DrawableView extends View {
private Paint textPaint;
private Paint linePaint;
private Paint fillPaint;
private Paint strokePaint;
private Bitmap bitmap;
private int screenWidth;
private int screenHeight;
public DrawableView(Context context) {
super(context);
init(context, null, 0);
}
public DrawableView(Context context, AttributeSet attrSet) {
super(context, attrSet);
init(context, attrSet, 0);
}
public DrawableView(Context context, AttributeSet attrSet, int style) {
super(context, attrSet, style);
init(context, attrSet, style);
}
private void init(Context context, AttributeSet attrSet, int style) {
textPaint = new Paint();
textPaint.setAntiAlias(true);
textPaint.setStyle(Paint.Style.FILL);
textPaint.setColor(ColorUtil.LIGHT_BLUE);
textPaint.setTextSize(40);
textPaint.setTypeface(Typeface.create(Typeface.MONOSPACE, Typeface.NORMAL));
linePaint = new Paint();
linePaint.setStyle(Paint.Style.STROKE);
linePaint.setStrokeWidth(5);
linePaint.setColor(ColorUtil.LIGHT_BLUE);
fillPaint = new Paint();
fillPaint.setStyle(Paint.Style.FILL);
fillPaint.setColor(ColorUtil.YELLOW);
strokePaint = new Paint();
strokePaint.setStyle(Paint.Style.STROKE);
strokePaint.setStrokeWidth(5);
strokePaint.setColor(ColorUtil.RED);
bitmap = BitmapUtil.getBitmap(context, R.drawable.float_icon_camera_normal);
screenWidth = ViewUtil.getScreenSize(context).w;
screenHeight = ViewUtil.getScreenSize(context).h;
}
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
Path path = new Path();
//绘制起点
double offset = -500 + TimeUtil.millisOfNow() % 3000 / 3000d * 500;
path.moveTo((int) offset, screenHeight / 2);
//循环绘制屏幕曲线
for (int length = 0; length
1654938663
查看更多评论