android录音波浪动画_Android实现波浪效果 - WaveView

本文介绍了如何在Android中实现波浪动画,包括WaveView的属性如水位、振幅、波长和偏移的设置,以及通过绘制初始波形、调整Bitmap大小并填充到WaveView,最后实现波浪的水平、垂直动画效果。提供了详细的代码实现和GitHub源码链接。
摘要由CSDN通过智能技术生成

效果图

先上效果图

screenshot.gif

实现

WaveView的属性

WaveView的属性

Wate Level(水位) - 波浪静止时水面距离底部的高度

Amplitude(振幅) - 波浪垂直振动时偏离水面的最大距离

Wave Length(波长) - 一个完整的波浪的水平长度

Wave Shift(偏移) - 波浪相对于初始位置的水平偏移

实现思路

设想我们有一个画好波形的图片,那么我们只需要用这张图片填充(X轴方向重复,Y轴方向延伸)整个View,然后水平移动图片,就可以得到波浪效果了。

所以要做的事很简单:绘制一个波形图,填充到View里,移动波形图。

1. 绘制初始波形

private void createShader() {

...

Bitmap bitmap = Bitmap.createBitmap(getWidth(), getHeight(), Bitmap.Config.ARGB_8888);

Canvas canvas = new Canvas(bitmap);

// Draw default waves into the bitmap

// y=Asin(ωx+φ)+h

float waveX1 = 0;

final float wave2Shift = mDefaultWaveLength / 4;

final flo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值