有没有办法在Android 2.3中添加定时文本?

时间:2014-05-28 05:34:27

标签: android android-mediaplayer

我是Android的初学者。我想用歌词制作一个音频播放器。

我在API级别16及以上找到了一种方法

player.addTimedTextSource(getSubtitleFile(R.raw.sub))

我也希望在以下版本中实现这些功能。

有没有办法实现这个?

1 个答案:

答案 0 :(得分:0)

您需要按照以下步骤操作:

  1. 读取srt文件,如:

    InputStream is = getResources().openRawResource(R.raw.selena1);
    int size = is.available();
    byte[] buffer = new byte[size];
    is.read(buffer);
    is.close();
    
  2. 打开srt文件时,可以在srt文件中看到时间。您需要检索该时间并为开始时间和数组创建一个数组。另一个时间延迟阵列。

  3. 当您使用Player

  4. 的开头完成此启动处理程序时
  5. 现在,从数组持续时间开始,您可以决定将通过Handler类处理的字幕显示的时间间隔,例如:

    private Handler myHandler = new Handler();
    private Runnable drawRunnable = new Runnable() {
    
        @Override
        public void run() {
            myHandler.postDelayed(this, delay);     
        }
    };
    
  6. 你需要根据这个来管理你的逻辑。