原项目地址:https://github.com/zhengken/LyricViewDemo
dependencies {
compile 'com.github.zhengken:LyricViewDemo:v1.0'
}
XML code
//step 1
android:id="@+id/custom_lyric_view"
android:layout_width="match_parent"
android:layout_height="match_parent" />
Java code
//step 2
LyricView mLyricView = (LyricView)findViewById(R.id.custom_lyric_view);
//step 3
mLyricView.setLyricFile(lyricFile);
//step 4, update LyricView every interval
mLyricView.setCurrentTimeMillis(progress);
//step 5, implement the interface when user drag lyrics and click the play icon
mLyricView.setOnPlayerClickListener(new LyricView.OnPlayerClickListener() {
@Override
public void onPlayerClicked(long progress, String content) {
}
});
XML attributes
AttributesFormatDefaultDescription
fadeInFadeOutbooleanfalseEnable lyrics fadeInFadeOut or not
hintstringNo LyricsDisplay when not exist lyric file
hintColorcolor#FFFFFFThe color of hint text
textSizedimension16spThe text size of lyrics
textColorcolor#8D8D8DThe color of lyrics
highlightColorcolor#FFFFFFThe color of current lyric that playing
textAlignenumCENTERThe alignment of lyrics
maxLengthdimension300dpLine feed when lyric'width beyond maxLength
lineSpacedimension25dpLine space
Java API
MethodsDescription
setOnPlayerClickListener(OnPlayerClickListener listener)Callback when click the play icon
setAlignment(@Alignment int alignment)Set the alignment of the lyrics
setCurrentTimeMillis(long current)Scroll lyrics to the specify TimeMillis
setLyricFile(File file)Set the lyric file, and auto set the charset by juniversalchardet-1.0.3
setLyricFile(File file, String charset)Set the lyric file with the specified charset
setTypeface(Typeface typeface)Set the typeface of lyrics
reset()Reset the LyricView
Thanks