2016-06-08 69 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); 
} 

希望這有幫助

相關問題