UIPinchGesture不能在MPMoviePlayerController上工作?

时间:2012-10-08 13:00:59

标签: iphone objective-c ios ios6 xib

我在视图中添加了pinch识别器(我在其中添加了MPMoviePlayerController)并创建了一个处理pinch的函数(我为该函数设置了IBAction)但它没有输入该函数。可能是什么问题?

3 个答案:

答案 0 :(得分:2)

MPMoviePlayerController有自己实现的手势识别器,可以在MPSwipableView上运行。这些手势已经过修改,可以执行MPMoviePlayer使用的特定默认操作。

  • 通过MPMoviePlayerController定义自定义手势。你必须使用一个单独的空视图,将它添加到你的MPMoviePlayerController上。

  • 在上面添加手势识别器。现在,您可以在空视图上接收手势。根据你可以调整你的MPMoviePlayer的View框架。

答案 1 :(得分:0)

将委托添加到pinch识别器,MPMoviePlayerController并为MPMoviePlayerController启用用户交互,

pinchreg.delegate=self;
player.delegate=self;
player.userinteractionenabled=yes;

答案 2 :(得分:0)

umirza47答案的替代方法是停用pinchgesture视图附带的MPMoviePlayerController识别器。这取决于你是否需要在电影播放器​​上进行放大/缩小功能以达到你自己的目的:我相信电影播放器​​上的pinchgesture识别器是什么:

for (UIGestureRecognizer *gesture in ((UIView *)videoVC.moviePlayer.view.subviews[0]).gestureRecognizers) {

     if ([gesture isKindOfClass:[UIPinchGestureRecognizer class]]) {

                gesture.enabled = NO;
     }
}