全屏播放YouTube视频

时间:2016-01-14 16:10:51

标签: ios youtube youtube-iframe-api ytplayerview

我想使用YouTube帮助器https://github.com/youtube/youtube-ios-player-helper在我的应用中播放YouTube视频。我想在表格视图单元格中显示YTPlayerView,当点击视频时,我希望它以全屏模式开始播放。 但是,当我尝试使用YouTube帮助程序时,它会内嵌播放视频,并且不会扩展为全屏。 有没有办法让YouTube助手立即全屏播放视频?

2 个答案:

答案 0 :(得分:1)

实际上这很容易。这是在表格单元格中显示YTPlayerView的代码。点按YouTube缩略图即可全屏播放。

创建自定义表格视图单元格。在Interface Builder中,将视图拖到单元格中,将类更改为YTPlayerView并将其连接到单元格的playerView属性。

#import <UIKit/UIKit.h>
#import "YTPlayerView.h"
@interface VideoCellTableViewCell : UITableViewCell
@property (nonatomic, strong) IBOutlet YTPlayerView *playerView;
@property (assign) BOOL isLoaded; 
@end

在视图控制器中:

- (UITableViewCell *)tableView:(UITableView *)tableView    cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    VideoCellTableViewCell *cell = (VideoCellTableViewCell *) [tableView dequeueReusableCellWithIdentifier:@"VideoCell" forIndexPath:indexPath];
    [cell.playerView stopVideo];
    if (!cell.isLoaded) {
       [cell.playerView loadWithVideoId:@"your video ID"];
       cell.isLoaded = YES;
     }
     else { 
         // avoid reloading the player view, use cueVideoById instead
         [cell.playerView cueVideoById:@"your video ID" startSeconds:0 suggestedQuality:kYTPlaybackQualityDefault];
     }
return cell;
}

答案 1 :(得分:0)

这是Primulaveris&#39;在Swift 2.2中回答:

表格视图单元格:

import UIKit
class VideoCellTableViewCell: UITableViewCell {
    @IBOutlet var playerView: YTPlayerView!
    var isLoaded = false
}

TableViewController:

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    var cell = (tableView!.dequeueReusableCellWithIdentifier("VideoCell", forIndexPath: indexPath!)! as! VideoCellTableViewCell)
    cell.playerView.stopVideo()
    if cell.isLoaded {
        cell.playerView.loadWithVideoId("your video ID")
        cell.isLoaded = true
    }
    else {
        // avoid reloading the player view, use cueVideoById instead
        cell.playerView.cueVideoById("your video ID", startSeconds: 0, suggestedQuality: kYTPlaybackQualityDefault)
    }
    return cell!
}