From 7b0a7a44c096794ede832f65550c3a29da23dbac Mon Sep 17 00:00:00 2001
From: Runt <qingingrunt2010@qq.com>
Date: Wed, 04 May 2022 14:13:18 +0000
Subject: [PATCH] 滑动歌词 计算时间 问题修复
---
app/src/main/java/com/auto/lyric/service/FloatingWindowService.java | 12 ++++++++----
app/src/main/java/com/auto/lyric/widgets/LyricView.java | 8 ++++----
2 files changed, 12 insertions(+), 8 deletions(-)
diff --git a/app/src/main/java/com/auto/lyric/service/FloatingWindowService.java b/app/src/main/java/com/auto/lyric/service/FloatingWindowService.java
index ed45dd9..92d3ce3 100644
--- a/app/src/main/java/com/auto/lyric/service/FloatingWindowService.java
+++ b/app/src/main/java/com/auto/lyric/service/FloatingWindowService.java
@@ -213,11 +213,15 @@
case MotionEvent.ACTION_UP:
if(binding.btnStart.getText().equals("开启") || pause) {
int index = binding.lyric.getIndexFromOffsetY(binding.lyric.getOffsetY());
- binding.lyric.setIndex(index);
- binding.lyric.setOffsetY(220 - index * (binding.lyric.getSIZEWORD() + 44));
LyricObject object = LyricServer.getLrc_map().get(index);
- Log.e("LyricView", "object:" + object);
- progress = object.begintime;
+ Log.e("LyricView", "index:"+index+" object:" + object);
+ if(object != null) {
+ binding.lyric.setIndex(index);
+ binding.lyric.setOffsetY(220 - index * (binding.lyric.getSIZEWORD() + 44));
+ Log.e("LyricView", "object:" + object);
+ progress = object.begintime;
+ binding.timer.setText(msFormat.format(progress));
+ }
binding.lyric.invalidate();
}
break;
diff --git a/app/src/main/java/com/auto/lyric/widgets/LyricView.java b/app/src/main/java/com/auto/lyric/widgets/LyricView.java
index 77d8a77..8c1880b 100644
--- a/app/src/main/java/com/auto/lyric/widgets/LyricView.java
+++ b/app/src/main/java/com/auto/lyric/widgets/LyricView.java
@@ -189,11 +189,11 @@
//220 - index * (binding.lyric.getSIZEWORD() + 44)
int index = (int) ((220 - offsetY) / (SIZEWORD + 44));
Log.i("LyricView", "getIndexFromOffsetY index:"+index);
- if(LyricServer.getLrc_map().keySet().size()>index){
- return index;
- }else if(index < 0){
+ if(index < 0){
return 0;
- }else{
+ }else if(LyricServer.getLrc_map().keySet().size()>index){
+ return index;
+ }else {
return LyricServer.getLrc_map().keySet().size() -1;
}
}
--
Gitblit v1.9.1