MCPcopy Index your code
hub / github.com/Jay-Goo/WaveLineView

github.com/Jay-Goo/WaveLineView @v1.0.4

Chat with this repo
repository ↗ · DeepWiki ↗ · release v1.0.4 ↗ · + Follow
82 symbols 160 edges 6 files 16 documented · 20%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

WaveLineView

一款内存友好的录音漂亮的波浪动画

效果图(实际效果更好)

image


Usage

Step1

 allprojects {
        repositories {
            ...
            maven { url 'https://jitpack.io' }
        }
    }

    dependencies {
            compile 'com.github.Jay-Goo:WaveLineView:v1.0.3'
    }

Step2

<jaygoo.widget.wlv.WaveLineView
        android:id="@+id/waveLineView"
        android:layout_width="match_parent"
        android:layout_height="120dp"
        app:wlvBackgroundColor="@android:color/white"
        app:wlvMoveSpeed="290"
        />

Step3

waveLineView.startAnim();

waveLineView.stopAnim();
  @Override
    protected void onResume() {
        super.onResume();
        waveLineView.onResume();
    }

    @Override
    protected void onPause() {
        super.onPause();
        waveLineView.onPause();
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        waveLineView.release();
    }

Attributes

attr format description
backgroundColor color 背景色
wlvLineColor color 波浪线的颜色
wlvThickLineWidth dimension 中间粗波浪曲线的宽度
wlvFineLineWidth dimension 三条细波浪曲线的宽度
wlvMoveSpeed float 波浪线移动的速度,默认值为290F,方向从左向右,你可以使用负数改变移动方向
wlvSamplingSize integer 采样率,动画效果越大越精细,默认64
wlvSensibility integer 灵敏度,范围[1,10],越大越灵敏,默认值为5

原理讲解传送门

联系我

  • Email: 1015121748@qq.com
  • QQ Group: 573830030 有时候工作很忙没空看邮件和Issue,大家可以通过QQ群联系我

一杯咖啡

大家都知道开源是件很辛苦的事情,这个项目也是我工作之余完成的,平时工作很忙,但大家提的需求基本上我都尽量满足,如果这个项目帮助你节省了大量时间,你很喜欢,你可以给我一杯咖啡的鼓励,不在于钱多钱少,关键是你的这份鼓励所带给我的力量~

致谢

Bugly—以Tencent OS录音机波形动画为实例

DrkCore—以Tencent OS录音机波形为例

Extension points exported contracts — how you extend this code

IRenderer (Interface)
(no doc) [2 implementers]
library/src/main/java/jaygoo/widget/wlv/RenderView.java
OnRecordStateChangeListener (Interface)
(no doc)
app/src/main/java/jaygoo/wavelineview/WaveMp3Recorder.java

Core symbols most depended-on inside this repo

getRenderView
called by 6
library/src/main/java/jaygoo/widget/wlv/RenderView.java
startAnim
called by 4
library/src/main/java/jaygoo/widget/wlv/RenderView.java
getSurfaceHolder
called by 3
library/src/main/java/jaygoo/widget/wlv/RenderView.java
setRun
called by 3
library/src/main/java/jaygoo/widget/wlv/RenderView.java
stopAnim
called by 3
library/src/main/java/jaygoo/widget/wlv/RenderView.java
isParametersNull
called by 3
library/src/main/java/jaygoo/widget/wlv/WaveLineView.java
startThread
called by 2
library/src/main/java/jaygoo/widget/wlv/RenderView.java
release
called by 2
library/src/main/java/jaygoo/widget/wlv/RenderView.java

Shape

Method 73
Class 7
Interface 2

Languages

Java100%

Modules by API surface

library/src/main/java/jaygoo/widget/wlv/RenderView.java25 symbols
library/src/main/java/jaygoo/widget/wlv/WaveLineView.java23 symbols
app/src/main/java/jaygoo/wavelineview/WaveMp3Recorder.java19 symbols
app/src/main/java/jaygoo/wavelineview/MainActivity.java7 symbols
app/src/main/java/jaygoo/wavelineview/LeakTestActivity.java6 symbols
app/src/main/java/jaygoo/wavelineview/App.java2 symbols

For agents

$ claude mcp add WaveLineView \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact