返回顶部
首页 > 资讯 > 移动开发 >比较完整的android MP3 LRC歌词滚动高亮显示(附源码)
  • 565
分享到

比较完整的android MP3 LRC歌词滚动高亮显示(附源码)

mplrcmp3高亮源码Android 2022-06-06 10:06:21 565人浏览 薄情痞子
摘要

1.以前的滚动只是安行来刷新,现在不是按行来滚动了,其实就是在一定时间内整体往上移动,比如说在1S内刷新10次,由于认得肉眼看起来像是滚动。 关键代码如下: 代码如下:&nbs

1.以前的滚动只是安行来刷新,现在不是按行来滚动了,其实就是在一定时间内整体往上移动,比如说在1S内刷新10次,由于认得肉眼看起来像是滚动。

关键代码如下:
代码如下:
        float plus = currentDunringTime == 0 ? 30
                : 30
                        + (((float) currentTime - (float) sentenctTime) / (float) currentDunringTime)
                        * (float) 30;
        // 向上滚动 这个是根据歌词的时间长短来滚动,整体上移
        canvas.translate(0, -plus);

plus就是每次移动的大小,它就是根据歌词所持续的时间来计算的,时间越长,plus的值就越小。具体的看代码了。

下面就是获取歌词的信息:
代码如下:
 public void updateIndex(long time) {
  this.currentTime = time;
  // 歌词序号
  index = mLyric.getNowSentenceIndex(time);
  if (index != -1) {
   Sentence sen = Sentencelist.get(index);
   sentenctTime = sen.getFromTime();
   currentDunringTime = sen.getDuring();
  }
 }

以下就是跟新线程
代码如下:
 class UIUpdateThread implements Runnable {
  long time = 100; // 滚动速度
  public void run() {
   while (mp.isPlaying()) {
    lyricView.updateIndex(mp.getCurrentPosition());
    mHandler.post(mUpdateResults);
    try {
     Thread.sleep(time);
    } catch (InterruptedException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
    }
   }
  }
 }

project链接:点击下载

您可能感兴趣的文章:使用SurfaceView实现视频弹幕Android实现视频弹幕功能Android实现歌词滚动效果android实现歌词自动滚动效果Android 基于RecyclerView实现的歌词滚动自定义控件SurfaceView播放视频发送弹幕并实现滚动歌词


--结束END--

本文标题: 比较完整的android MP3 LRC歌词滚动高亮显示(附源码)

本文链接: https://lsjlt.com/news/27283.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作