2016-06-08 67 views
0

有人有关于如何修复AVPlayer在可滚动视图上的位置的想法我正在使用以下代码来设置AVPlayer框架,但是当设备大小更改它保持不同的大小相同的大小,我也有一个可滚动的视图,因此,我使用视图滚动在背景和球员仍然修复一个地方这个代码。任何帮助表示赞赏。如何修复AVPlayer在可滚动视图上的位置或如何在视图中修复

//here is my code 

    - (void)viewDidLoad { 
      [super viewDidLoad]; 

    NSString *localfilepath=[NSString stringWithFormat:@"%@",[managedObject valueForKey:@"clip_path"]]; 

    player = [AVPlayer playerWithURL:url]; 

    AVPlayerViewController *controller = [[AVPlayerViewController alloc] init]; 

    [self addChildViewController:controller]; 
    [self.view addSubview:controller.view]; 

    controller.view.frame = CGRectMake(10,80,300,250); 
    controller.player = player; 
    controller.showsPlaybackControls = YES; 

    [player pause]; 

} 
+0

如何实现UIScrollViewDelegate的方法 - scrollViewDidScroll,在它可以设置AVPlayerView的框架 –

+0

我没有得到?你会怎么做@ J.Hunter – vicky

+0

另一种方式:不要将avplayer视图添加为滚动视图的子视图,添加avplayer视图并将视图滚动到与子视图相同的视图,如avplayer和scroll view都是兄弟视图。 –

回答

0

这样的:

1.您的视图控制器符合UIScrollViewDelegate协议
2.in - (无效)viewDidLoad中,设置滚动视图的委托自我,像

self.scrollView.delegate = self; 

3.implement - (void)scrollViewDidScroll:(UIScrollView *)scrollView,例如

- (void)scrollViewDidScroll:(UIScrollView *)scrollView { 
    CGPoint offset = scrollView.contentOffset; 
    UIView *avplayerView = [self getAVPlayerView]; 
    avplayerView.frame = CGRectMake(10, 80 + offset.y, 300, 250); 
} 

希望这有帮助

相关问题