0
我正在开发一个应用程序,允许用UIPanGesture浏览视频。反转MPMoviePlayerController
我已经完全向前运行,这是我遇到的麻烦。
- (void) handlePanGesture:(UIPanGestureRecognizer*)pan{
if(pan.state == UIGestureRecognizerStateEnded)
{
moviePlayer.currentPlaybackRate = 0.00;
currentTranslate = 0;
}
else
{
CGPoint translate = [pan translationInView:self.view];
CGFloat xCoord = translate.x;
CGFloat diff = (xCoord - currentTranslate);
CGFloat currentRate = [moviePlayer currentPlaybackRate];
currentTranslate = xCoord;
if (diff>=0) {
//If the difference is positive
moviePlayer.currentPlaybackRate = currentRate + (diff/100);
} else {
//If the difference is negative
moviePlayer.currentPlaybackRate = (currentRate + (diff/100)) * -1.0;
}
NSLog(@"%F",moviePlayer.currentPlaybackRate);
}
}
基本上这样做是检测如果手势状态是“结束”,如果不是的话,即手势继续,计算以前的X坐标和当前的x坐标之间的差异。如果差值是正值(即从左到右移动),则通过计算播放速率来提前播放视频。如果差值为负值(向后),则取消差值并计算回放速率。
我似乎无法得到正确的向后运动。谁能帮忙?