krcview 目前仿酷狗音乐app实现了歌词蠕动、滑动定位等功能,效果如下所示:
allprojects {
repositories {
maven { url 'https://jitpack.io' }
}
}
dependencies {
implementation 'com.github.censhengde:krcview:$lastVersion'
}
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用法详见app module。
加QQ群: