永远的25句话

1,记住该记住的,忘记该忘记的。改变能改变的,接受不能改变的

2,能冲刷一切的除了眼泪,就是时间,以时间来推移感情,时间越长,冲突越淡,仿佛不断稀释的茶。

3,怨言是上天得至人类最大的供物,也是人类祷告中最真诚的部分。

4,智慧的代价是矛盾。这是人生对人生观开的玩笑。

5,世上的姑娘总以为自己是骄傲的公主(除了少数极丑和少数极聪明的姑娘例外)

6,如果敌人让你生气,那说明你还没有胜他的把握

7,如果朋友让你生气,那说明你仍然在意他的友情

8,令狐冲说“有些事情本身我们无法控制,只好控制自己。”

9,我不知道我现在做的哪些是对的,那些是错的,而当我终于老死的时候我才知道这些。所以我现在所能做的就是尽力做好每一件事,然后等待着老死。

10,也许有些人很可恶,有些人很卑鄙。而当我设身为他想象的时候,我才知道:他比我还可怜。所以请原谅所有你见过的人,好人或者坏人

11,鱼对水说你看不到我的眼泪,因为我在水里.水说我能感觉到你的眼泪,因为你在我心里。

12,快乐要有悲伤作陪,雨过应该就有天晴。如果雨后还是雨,如果忧伤之后还是忧伤.请让我们从容面对这离别之后的离别。 微笑地去寻找一个不可能出现的你!

13,死亡教会人一切,如同考试之后公布的结果——虽然恍然大悟,但为时晚矣~!

14,你出生的时候,你哭着,周围的人笑着;你逝去的时候,你笑着,而周围的人在哭!一切都是轮回!!!! 我们都在轮回中!!!!

15,男人在结婚前觉得适合自己的女人很少,结婚后觉得适合自己的女人很多

16,于千万人之中,遇见你所遇见的人;于千万年之中,时间的无涯荒野里,没有早一步,也没有晚一步,刚巧赶上了

17,每个人都有潜在的能量,只是很容易:被习惯所掩盖,被时间所迷离,被惰性所消磨.

18,人生短短几十年,不要给自己留下了什么遗憾,想笑就笑,想哭就哭,该爱的时候就去爱,无谓压抑自己

19,《和平年代》里的话:当幻想和现实面对时,总是很痛苦的。要么你被痛苦击倒,要么你把痛苦踩在脚下

20,真正的爱情是不讲究热闹不讲究排场不讲究繁华更不讲究嚎头的

21,生命中,不断地有人离开或进入。于是,看见的,看不见的;记住的,遗忘了。 生命中,不断地有得到和失落。于是,看不见的,看见了;遗忘的,记住了。 然而,看不见的,是不是就等于不存在?记住的,是不是永远不会消失?

22,我们确实活得艰难,一要承受种种外部的压力,更要面对自己内心的困惑。在苦苦挣扎中,如果有人向你投以理解的目光,你会感到一种生命的暖意,或许仅有短暂的一瞥,就足以使我感奋不已。

23,我不去想是否能够成功,既然选择了远方,便只顾风雨兼程; 我不去想,身后会不会袭来寒风冷雨,既然目标是地平线,留给世界的只能是背影.

24,后悔是一种耗费精神的情绪.后悔是比损失更大的损失,比错误更大的错误.所以不要后悔

25,日出东海落西山,愁也一天,喜也一天;遇事不钻牛角尖,人也舒坦,心也舒坦。

解析到 21 行歌词 2025-12-04 18:16:58.492 31580-31580 LrcDebug com.weishitech.qichechangtingyinyue D [00:01.00]歌曲名 背叛 [00:02.00]歌手名 曹格 [00:03.00]作词:阿丹/邬裕康 [00:04.00]作曲:曹格 [00:14.06]雨 [00:16.01]不停落下来 [00:21.30]花 [00:23.09]怎么都不开 [00:27.82]尽管我细心灌溉 [00:31.46]你说不爱就不爱 [00:35.12]我一个人 [00:39.11]欣赏悲哀 [00:43.10]爱 [00:45.15]只剩下无奈 [00:50.43]我 [00:52.18]一直不愿再去猜 [00:56.97]钢琴上黑键之间 [01:00.51]永远都夹着空白 [01:04.25]缺了一块 [01:08.14]就不精彩 [01:12.33]紧紧相依的心如何 [01:16.03]Say goodbye [01:19.47]你比我清楚还要我说明白 [01:25.90]爱太深会让人疯狂的勇敢 [01:33.79]我用背叛自己 [01:37.33]完成你的期盼 [01:41.07]把手放开不问一句 [01:44.61]Say goodbye [01:48.05]当作最后一次对你的溺爱 [01:54.49]冷冷清清淡淡今后都不管 [02:02.32]只要你能愉快 [02:18.61]心 [02:20.15]有一句感慨 [02:25.74]我 [02:27.54]还能够跟谁对白 [02:32.62]在你关上门之前 [02:35.72]替我再回头看看 [02:39.61]那些片段 [02:43.30]还在不在 [02:47.29]紧紧相依的心如何 [02:50.88]Say goodbye [02:54.47]你比我清楚还要我说明白 [03:00.76]爱太深会让人疯狂的勇敢 [03:08.44]我用背叛自己 [03:12.28]完成你的期盼 [03:15.98]把手放开不问一句 [03:19.47]Say goodbye [03:23.11]当作最后一次对你的溺爱 [03:29.44]冷冷清清淡淡今后都不管 [03:37.18]只要你能愉快 [04:02.51]紧紧相依的心如何 [04:06.35]Say goodbye [04:09.70]你比我清楚还要我说明白 [04:16.03]爱太深会让人疯狂的勇敢 [04:23.57]我用背叛自己 [04:27.31]完成你的期盼 [04:31.45]把手放开不问一句 [04:34.79]Say goodbye [04:38.38]当作最后一次对你的溺爱 [04:44.62]冷冷清清淡淡今后都不管 [04:52.75]只要你能愉快 [05:03.03]只要你能愉快 package com.weishitech.qichechangtingyinyue.fragment.Adapter; import android.content.Context; import android.graphics.Color; import android.util.Log; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.ImageView; import android.widget.TextView; import androidx.annotation.NonNull; import androidx.recyclerview.widget.RecyclerView; import com.bumptech.glide.Glide; import com.hfd.common.util.DensityUtil; import com.hw.lrcviewlib.LrcDataBuilder; import com.hw.lrcviewlib.LrcRow; import com.hw.lrcviewlib.LrcView; import com.weishitech.qichechangtingyinyue.R; import com.weishitech.qichechangtingyinyue.bean.MusicBean; import java.util.ArrayList; import java.util.Collections; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; // SongPagerAdapter.java public class SongPagerAdapter extends RecyclerView.Adapter<SongPagerAdapter.SongViewHolder> { List<LrcRow> lrcRows; private final List<MusicBean.DataBean> data; private final Context context; private int currentPosition = 0; // 播放回调接口 public interface OnPageSelectedListener { void onPageSelected(int position, MusicBean.DataBean song); } private OnPageSelectedListener listener; public void setOnPageSelectedListener(OnPageSelectedListener l) { this.listener = l; } public SongPagerAdapter(Context context, List<MusicBean.DataBean> data) { this.context = context; this.data = new ArrayList<>(data); } @NonNull @Override public SongViewHolder onCreateViewHolder(@NonNull ViewGroup parent, int viewType) { View view = LayoutInflater.from(context).inflate(R.layout.fragment_song_item, parent, false); return new SongViewHolder(view); } @Override public void onBindViewHolder(@NonNull SongViewHolder holder, int position) { MusicBean.DataBean song = data.get(position); holder.tvTitle.setText(song.getTitle()); holder.tvSinger.setText(song.getSinger()); Glide.with(context) .load(song.getCover()) .into(holder.ivCover); String lrcText = song.getLrc(); Log.d("LrcDebug", ""+lrcText); lrcRows = new LrcDataBuilder().builtFromText(lrcText); Log.d("LrcDebug", "解析到 " + (lrcRows != null ? lrcRows.size() : "null") + " 行歌词"); holder.lyricView.getLrcSetting() .setTimeTextSize(40)//时间字体大小 .setSelectLineColor(Color.parseColor("#FFFFFF"))//选中线颜色 .setSelectLineTextSize(25)//选中线大小 .setNormalRowColor(Color.parseColor("#919191")) .setHeightRowColor(Color.parseColor("#FFFFFF"))//高亮字体颜色 .setNormalRowTextSize(DensityUtil.sp2px(context, 17))//正常行字体大小 .setHeightLightRowTextSize(DensityUtil.sp2px(context, 17))//高亮行字体大小 .setTrySelectRowTextSize(DensityUtil.sp2px(context, 17))//尝试选中行字体大小 .setTimeTextColor(Color.parseColor("#FFFFFF"))//时间字体颜色 .setTrySelectRowColor(Color.parseColor("#FFFFFF"));//尝试选中字体颜色 holder.lyricView.commitLrcSettings(); holder.lyricView.setLrcData(lrcRows); // 标记当前绑定位置 holder.itemView.setTag(position); } @Override public int getItemCount() { return data.size(); } static class SongViewHolder extends RecyclerView.ViewHolder { ImageView ivCover; TextView tvTitle, tvSinger; LrcView lyricView; public SongViewHolder(@NonNull View itemView) { super(itemView); ivCover = itemView.findViewById(R.id.iv_cover); tvTitle = itemView.findViewById(R.id.tv_title); tvSinger = itemView.findViewById(R.id.tv_singer); lyricView = itemView.findViewById(R.id.lyricView); } } public MusicBean.DataBean getCurrentSong(int position) { if (position >= 0 && position < data.size()) { return data.get(position); } return null; } public class LrcDataBuilder { public List<LrcRow> builtFromText(String lrcText) { List<LrcRow> rows = new ArrayList<>(); if (lrcText == null || lrcText.trim().isEmpty()) { return rows; } String[] lines = lrcText.split("\\r?\\n"); for (String line : lines) { List<LrcRow> parsed = parseLrcLine(line.trim()); if (!parsed.isEmpty()) { rows.addAll(parsed); } } Collections.sort(rows); // 按时间排序 return rows; } private List<LrcRow> parseLrcLine(String line) { List<LrcRow> result = new ArrayList<>(); // 匹配所有 [mm:ss.xxx] 类型的时间标签 Pattern pattern = Pattern.compile("\\[(\\d{1,3}):(\\d{2})(?:\\.(\\d{2,3}))?\\]"); Matcher matcher = pattern.matcher(line); if (!matcher.find()) { // 没有时间标签,视为无效行或元数据(如 [ti:歌名]),可跳过 return result; } // 回退 matcher 到开头重新遍历 matcher.reset(); while (matcher.find()) { String originalTimeTag = matcher.group(0); // 完整标签 "[mm:ss.xx]" int min = Integer.parseInt(matcher.group(1)); int sec = Integer.parseInt(matcher.group(2)); int milli = 0; if (matcher.group(3) != null) { milli = Integer.parseInt(matcher.group(3)); if (matcher.group(3).length() == 2) { milli *= 10; // 将 xx 转为 xxx 毫秒 } } long timeMillis = (min * 60L + sec) * 1000 + milli; // 找到第一个时间标签之后的内容作为歌词正文 int textStart = line.lastIndexOf(']') + 1; // 取最后一个 ] 之后的内容 String text = line.substring(textStart).trim(); // 构造 LrcRow 对象(三参数构造器) result.add(new LrcRow(originalTimeTag, text, timeMillis)); } return result; } } } 打印是有歌词的,但是没显示
12-05
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值