Android 自定义音频录制控件

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/chezi008/article/details/64923736

Android 自定义音频录制控件

一、控件效果展示:

录音动画.gif

二、控件拆分

1、控件分为两部分,录制时长和麦克风控件。
2、麦克风控件带动画效果,控件感知到用户的触摸事件后进行一个动画效果。波纹效果和旋转效果。

//麦克风控件的触控事件
mDoughnutProgress.setOnTouchListener(new OnTouchListener() {
            @Override
            public boolean onTouch(View v, MotionEvent event) {
                switch (event.getAction()) {
                    case MotionEvent.ACTION_DOWN:
                        startAnimation();
                        return true;
                    case MotionEvent.ACTION_MOVE:
                        if (event.getY() < 0) {
                            stopAnimation();
                        } else {

                        }
                        return true;
                    case MotionEvent.ACTION_UP:
                        stopAnimation();
                        return true;
                    default:
                        break;
                }
                return false;
            }
        });

3、麦克风控件原型是网上的一位作者的,我加了一个麦克风的图片和触控动画。只有一个波纹效果。由于现在找不到出处,所以也没有贴出作者地址,有知道的同学可以留言给我,我加上作者注释。
4、麦克风控件原理:
- 波纹效果根据半径的大小变化逐渐改变透明度
- 波纹效果的半径大小的变换还有一个先后的顺序,当前一个圆环结束之后,后一个圆环才能开始动画。
- 旋转部分,用的是旋转画布的功能,但是麦克风图标是没有转的喔,只旋转了画出来的圆环。

 //转起来
        canvas.rotate(-currentAngle, 0, 0);

5、录音控件控件源码

猜你喜欢

转载自blog.csdn.net/chezi008/article/details/64923736