这已经是第二次实现这种效果了。记录下来。
首先看下效果图。这里就不搞gif 了
image.png
1、首先确定需要音频条得数量
2、根据大小计算出 间距和音频条得宽度
3、绘制初始样式
4、利用handler消息机制 每隔一段时间重新计算高度并绘制
直接上代码吧。都写好注释了。懒得分步写了。
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.Paint;
import android.os.Handler;
import android.os.Message;
import android.support.annotation.Nullable;
import android.util.AttributeSet;
import android.view.View;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
public class MusicView extends View {
private Paint mPaint;//画笔
private int mLineNum;// 跳动得音频效果数量
private flo