From ea6ce17bf3272259295adccbad85583079b5bac0 Mon Sep 17 00:00:00 2001 From: Runt <qingingrunt2010@qq.com> Date: Wed, 22 Feb 2023 14:14:41 +0000 Subject: [PATCH] api调用 --- app/src/main/java/com/auto/lyric/widgets/LyricView.java | 41 ++++++++++++++++------------------------- 1 files changed, 16 insertions(+), 25 deletions(-) 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 864d1f2..8c1880b 100644 --- a/app/src/main/java/com/auto/lyric/widgets/LyricView.java +++ b/app/src/main/java/com/auto/lyric/widgets/LyricView.java @@ -6,7 +6,6 @@ import android.graphics.Paint; import android.util.AttributeSet; import android.util.Log; -import android.view.MotionEvent; import com.auto.lyric.data.LyricObject; import com.auto.lyric.data.LyricServer; @@ -21,7 +20,6 @@ private float mX; //屏幕X轴的中点,此值固定,保持歌词在X中间显示 private float offsetY; //歌词在Y轴上的偏移量,此值会根据歌词的滚动变小 - private float touchY; //当触摸歌词View时,保存为当前触点的Y轴坐标 private int lrcIndex=0; //保存歌词TreeMap的下标 private int SIZEWORD=0;//显示歌词文字的大小值 private int INTERVAL=45;//歌词每行的间隔 @@ -70,29 +68,6 @@ canvas.drawText("找不到歌词", mX, 310, paint); } super.onDraw(canvas); - } - - /* (non-Javadoc) - * @see android.view.View#onTouchEvent(android.view.MotionEvent) - */ - @Override - public boolean onTouchEvent(MotionEvent event) { - // TODO Auto-generated method stub - float tt=event.getY(); - switch(event.getAction()){ - case MotionEvent.ACTION_DOWN: - break; - case MotionEvent.ACTION_MOVE: - touchY=tt-touchY; - offsetY=offsetY+touchY; - Log.e("LyricView","offsety:"+offsetY); - invalidate(); - break; - case MotionEvent.ACTION_UP: - break; - } - touchY=tt; - return true; } public void init(){ @@ -177,6 +152,9 @@ return lrcIndex; } + public void setIndex(int lrcIndex) { + this.lrcIndex = lrcIndex; + } /** * @return the offsetY @@ -206,4 +184,17 @@ public void setSIZEWORD(int sIZEWORD) { SIZEWORD = sIZEWORD; } + + public int getIndexFromOffsetY(float offsetY){ + //220 - index * (binding.lyric.getSIZEWORD() + 44) + int index = (int) ((220 - offsetY) / (SIZEWORD + 44)); + Log.i("LyricView", "getIndexFromOffsetY index:"+index); + if(index < 0){ + return 0; + }else if(LyricServer.getLrc_map().keySet().size()>index){ + return index; + }else { + return LyricServer.getLrc_map().keySet().size() -1; + } + } } -- Gitblit v1.9.1