首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MPMoviePlayerViewController应该像YTPlayer那样有生命

MPMoviePlayerViewController应该像YTPlayer那样有生命
EN

Stack Overflow用户
提问于 2015-12-22 08:43:56
回答 1查看 86关注 0票数 1

有什么简单的方法来实现YTPlayer类似于打开-关闭效果?我试过Facebook流行动画,但没能成功。下面是我尝试过的一些代码:

代码语言:javascript
复制
UIView *fromView = [transitionContext viewControllerForKey:UITransitionContextFromViewControllerKey].view;
fromView.tintAdjustmentMode = UIViewTintAdjustmentModeDimmed;
fromView.userInteractionEnabled = NO;
NSLog(@"Screen center: %f %ld",SCREEN_HEIGHT,(long)SCREEN_WIDTH);

NSLog(@"fromView center : %@", NSStringFromCGPoint(fromView.center));

UIView *toView = [transitionContext viewControllerForKey:UITransitionContextToViewControllerKey].view;                          CGRectGetWidth(transitionContext.containerView.bounds),

NSLog(@"Transition context center: %@", NSStringFromCGPoint(transitionContext.containerView.center));
//toView.center = CGPointMake(transitionContext.containerView.center.x, transitionContext.containerView.center.y);
toView.center = CGPointMake(0,0);
[transitionContext.containerView addSubview:toView];
NSLog(@"toView center : %@", NSStringFromCGPoint(toView.center));

POPSpringAnimation* scaleAnimationY = [POPSpringAnimation animationWithPropertyNamed:kPOPScrollViewZoomScale];
scaleAnimationY.fromValue = @(0);
scaleAnimationY.toValue=@(1);

POPSpringAnimation* scaleAnimationX = [POPSpringAnimation animationWithPropertyNamed:kPOPScrollViewZoomScale];
scaleAnimationX.fromValue = @(0);
scaleAnimationX.toValue=@(1);


POPSpringAnimation *positionAnimationY = [POPSpringAnimation animationWithPropertyNamed:kPOPLayerPositionY];
positionAnimationY.fromValue = @(self.view.frame.origin.y);
positionAnimationY.toValue = @(0);
positionAnimationY.springBounciness = 0;
[positionAnimationY setCompletionBlock:^(POPAnimation *anim, BOOL finished) {
    [transitionContext completeTransition:YES];
}];

NSLog(@"positionAnimationY fromValue,toValue : %@ %@", positionAnimationY.fromValue, positionAnimationY.toValue);

POPSpringAnimation *positionAnimationX = [POPSpringAnimation animationWithPropertyNamed:kPOPLayerPositionX];
positionAnimationX.fromValue = @(self.view.frame.origin.x);
positionAnimationX.toValue = @(SCREEN_WIDTH);
positionAnimationX.springBounciness = 0;
[positionAnimationX setCompletionBlock:^(POPAnimation *anim, BOOL finished) {
    //[transitionContext completeTransition:YES];
}];

NSLog(@"positionAnimationX fromValue, toValue : %@ %@", positionAnimationX.fromValue, positionAnimationX.toValue);

POPSpringAnimation *positionAnimation1Y = [POPSpringAnimation animationWithPropertyNamed:kPOPLayerPositionY];
positionAnimation1Y.fromValue = @(self.view.frame.origin.y);
positionAnimation1Y.toValue = @(SCREEN_HEIGHT);
positionAnimation1Y.springBounciness = 0;
[positionAnimation1Y setCompletionBlock:^(POPAnimation *anim, BOOL finished) {
    [transitionContext completeTransition:YES];
}];
[toView.layer pop_addAnimation:scaleAnimationY forKey:@"scaleAnimationY"];
[toView.layer pop_addAnimation:scaleAnimationX forKey:@"scaleAnimationX"];

我的意思是说YTPlayer喜欢动画: 1.打开效果:当点击视频时,视频应该逐渐覆盖整个屏幕。同时,背景也应该做同样的事情。2.关闭效果:点击完成后,视频应逐渐消失,回到原来在表视图或集合视图中的位置。

谢谢:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-22 09:01:25

您可以在这里安装一个YTPlayer调用:https://cocoapods.org/pods/youtube-ios-player-helper

或者您可以直接从这里获取文件:https://github.com/youtube/youtube-ios-player-helper

这并不是很好的文件,但你只需通过Youtube视频id。这个包确实非常好地执行了YouTube效果。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34411681

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档