资源简介

代码片段和文件信息
package com.ysbing.lrcshow;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.text.TextUtils;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Locale;
import java.util.Timer;
import java.util.TimerTask;
/**
* 歌词显示区域
*
* 比较难的逻辑,就是两句歌词交替显示
* 如果歌词1为空,设置歌词1为下一句歌词,记录时间1-时间2为歌词2的等待时间
* 歌词1播放->时间2-时间1
*
* 记录开始时间
* 播放前获取现在时间,减去和歌词时间的差
* 歌词结束时间减去开始播放时间,算出速度
*/
public class LRCFragment extends Fragment {
private View mView;
private LRCTextView lrcTv1;
private LRCTextView lrcTv2;
private TextView mTimeView;
private LrcUtil lrcUtil;
private Timer mTimer;
private long musicDuration;
private float time;
private long startTime;
private boolean isEnd;
@Override
public View onCreateView(LayoutInflater inflater ViewGroup container Bundle savedInstanceState) {
if (mView != null) {
return mView;
}
mView = inflater.inflate(R.layout.fragment_lrc container false);
initUI();
return mView;
}
private void initUI() {
lrcTv1 = (LRCTextView) mView.findViewById(R.id.lrcTv1);
lrcTv2 = (LRCTextView) mView.findViewById(R.id.lrcTv2);
mTimeView = (TextView) mView.findViewById(R.id.time);
}
/**
* 开始歌词的播放
*/
public void start(final String lrcPath int musicDuration) throws FileNotFoundException {
this.musicDuration = musicDuration * 1000;//转换成毫秒
this.startTime = System.currentTimeMillis();
lrcUtil = new LrcUtil(new File(lrcPath));
new Thread(new Runnable() {
@Override
public void run() {
time1 = time2 = 0;
word1 = word2 = null;
isEnd = false;
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
lrcTv1.cancel();
lrcTv2.cancel();
showTime();
showLrc1();
}
});
}
}).start();
}
private void showTime() {
time = 0;
if (mTimer != null)
mTimer.cancel();
mTimer = new Timer();
TimerTask task = new TimerTask() {
public void run() {
time += 0.1;
getActivity().runOnUiThread(new Runnable() {
@Override
public void run() {
String text = String.format(Locale.getDefault() “time:%.1f“ time);
mTimeView.setText(text);
}
});
}
};
mTimer.schedule(task
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 127 2016-07-26 16:13 LrcShow\.gitignore
文件 8 2016-07-26 16:13 LrcShow\app\.gitignore
文件 9314 2016-07-26 16:39 LrcShow\app\app.iml
文件 605 2016-07-26 16:19 LrcShow\app\build.gradle
文件 662 2016-07-26 16:13 LrcShow\app\proguard-rules.pro
文件 719 2016-07-26 17:07 LrcShow\app\src\main\AndroidManifest.xm
文件 2049 2016-07-26 16:53 LrcShow\app\src\main\assets\演员.lrc
文件 6997 2016-07-26 16:46 LrcShow\app\src\main\java\com\ysbing\lrcshow\LRCFragment.java
文件 4507 2016-07-26 16:20 LrcShow\app\src\main\java\com\ysbing\lrcshow\LRCTextView.java
文件 3960 2016-07-26 16:46 LrcShow\app\src\main\java\com\ysbing\lrcshow\LrcUtil.java
文件 1771 2016-07-26 17:11 LrcShow\app\src\main\java\com\ysbing\lrcshow\MainActivity.java
文件 1154 2016-07-26 16:51 LrcShow\app\src\main\res\layout\activity_main.xm
文件 1184 2016-07-26 16:37 LrcShow\app\src\main\res\layout\fragment_lrc.xm
文件 3418 2016-07-26 16:13 LrcShow\app\src\main\res\mipmap-hdpi\ic_launcher.png
文件 2206 2016-07-26 16:13 LrcShow\app\src\main\res\mipmap-mdpi\ic_launcher.png
文件 4842 2016-07-26 16:13 LrcShow\app\src\main\res\mipmap-xhdpi\ic_launcher.png
文件 7718 2016-07-26 16:13 LrcShow\app\src\main\res\mipmap-xxhdpi\ic_launcher.png
文件 10486 2016-07-26 16:13 LrcShow\app\src\main\res\mipmap-xxxhdpi\ic_launcher.png
文件 78 2016-07-26 16:52 LrcShow\app\src\main\res\values\strings.xm
文件 528 2016-07-26 16:13 LrcShow\build.gradle
文件 747 2016-07-26 16:13 LrcShow\gradle.properties
文件 4971 2016-07-26 16:13 LrcShow\gradlew
文件 2404 2016-07-26 16:13 LrcShow\gradlew.bat
文件 427 2016-07-26 16:13 LrcShow\local.properties
文件 861 2016-07-26 16:14 LrcShow\LrcShow.iml
文件 16 2016-07-26 16:13 LrcShow\settings.gradle
目录 0 2016-07-26 17:11 LrcShow\app\src\main\java\com\ysbing\lrcshow
目录 0 2016-07-26 16:17 LrcShow\app\src\main\java\com\ysbing
目录 0 2016-07-26 16:16 LrcShow\app\src\main\java\com
目录 0 2016-07-26 16:13 LrcShow\app\src\main\res\drawable
............此处省略19个文件信息
相关资源
- 美食天下项目Android版源码和Web版源码
- Android之自定义ToggleButton使用
- Android非常漂亮的登录界面
- pc与android通过usb socket实现手机通信
- android毕业设计
- 百度地图自定义Markerandroid
- Android分区工具包
- android-support-v4.jar已打包进去源代码
- u-blox_Android_GNSS_Driver_v3.10驱动源码+中
- 个人根据Android移动开发案例详解手写
- android 视频播放器 项目和原码
- Android【动画】【特效】 17种动画特效
- 基于Android智能家居详细设计(经典)
- android通过JDBC连接Mysql数据库
- Android通讯录的源代码
- android 瀑布流Demo
- 指纹传感器FPC1080在android下的驱动
- delphi xe5 android 调用照相机摄像头拍照
- Android手机连连看游戏源码
- android-sdk-windows v2.3离线完整版
- android 底部弹出菜单(带透明背景)
- Android工程模式简介.rar
- Android蓝牙和Cors网络开发源码
- Android powermanger wakelock
- Android v7的一些jar包
- 最新android supportV7包
- android图片压缩工具类分享
- 单机搭建Android(解决Network is unreach
- Android上监听收到的短信(SMS)
- android电商app源码
评论
共有 条评论