美文网首页Android技术知识Android开发经验谈Android开发
Android 仿酷狗音乐实现krc歌词渲染View(高性能)

Android 仿酷狗音乐实现krc歌词渲染View(高性能)

作者: 首席网管 | 来源:发表于2023-08-21 15:34 被阅读0次

KRC 格式歌词UI控件

一,成品展示

krcview 目前仿酷狗音乐app实现了歌词蠕动、滑动定位等功能,效果如下所示:


krcview.gif

二,使用方式

1.在工程根目录 build.gradle 文件添加代码:

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

       }
    }

2. 在app module build.gradle 文件添加代码:

dependencies {

       implementation 'com.github.censhengde:krcview:$lastVersion'

    }

3. 常用控件属性或api说明:

xml 部分:

<com.bytedance.krcview.KrcView
            // 当前行未唱部分歌词颜色。
            app:current_line_text_color="@color/white" 
            // 当前行已唱部分歌词颜色。
            app:current_line_highLight_text_color="@color/design_default_color_secondary_variant"
            //  其他未唱部分歌词颜色。
            app:normal_text_color="@color/white"
            // 歌词行间距
            app:lineSpace="10dp"
            // 最大歌词尺寸
            app:max_text_size="18sp"
            // 最小歌词尺寸
            app:min_text_size="15sp"
            // 单行歌词最大允许字数,超过这个字数则自动换行。
            app:maxWordsPerLine="15"
            // 当前行歌词距离控件顶部的距离。
            app:current_line_top_offset="70dp"
           />

java/kotlin代码部分:

 // 设置krc 歌词数据。
 public void setKrcData(List<KrcLineInfo> data);
 // 设置当前歌词进度。
 public final void setProgress(final long progress);
 // 设置 LocatedView。note:LocatedView 的垂直中心点与当前行歌词bottom 对齐。
 public void setLocatedView(View view); 
 // 设置拖拽歌词监听器。
 public void setOnDraggingListener(@NonNull onDraggingListener listener);

更多api用法详见:https://github.com/censhengde/krcview

相关文章

网友评论

    本文标题:Android 仿酷狗音乐实现krc歌词渲染View(高性能)

    本文链接:https://www.haomeiwen.com/subject/fxaemdtx.html