示例#1
0
 /** 区域内循环播放 */
 public void loopDelayed(int startTime, int endTime) {
   int delayMillis = endTime - startTime;
   seekTo(startTime);
   if (!isPlaying()) start();
   mVideoHandler.removeMessages(HANDLER_MESSAGE_LOOP);
   mVideoHandler.sendMessageDelayed(
       mVideoHandler.obtainMessage(HANDLER_MESSAGE_LOOP, getCurrentPosition(), delayMillis),
       delayMillis);
 }
示例#2
0
 @Override
 public void handleMessage(Message msg) {
   switch (msg.what) {
     case HANDLER_MESSAGE_PARSE:
       pause();
       break;
     case HANDLER_MESSAGE_LOOP:
       if (isPlaying()) {
         seekTo(msg.arg1);
         sendMessageDelayed(
             mVideoHandler.obtainMessage(HANDLER_MESSAGE_LOOP, msg.arg1, msg.arg2),
             msg.arg2);
       }
       break;
     default:
       break;
   }
   super.handleMessage(msg);
 }