| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157 |
- //
- // TCPlayViewCell.m
- // TXXiaoShiPinDemo
- //
- // Created by xiang zhang on 2018/2/2.
- // Copyright © 2018年 tencent. All rights reserved.
- //
- #import "TCPlayViewCell.h"
- #import "UIImageView+WebCache.h"
- #define FULL_SCREEN_PLAY_VIDEO_VIEW 10000
- @implementation TCPlayViewCell
- - (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier
- {
- self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
- if (self) {
- CGRect frame = self.contentView.bounds;// [UIScreen mainScreen].bounds;
- _videoCoverView = [[UIImageView alloc] initWithFrame:self.contentView.bounds];
- _videoCoverView.contentMode = UIViewContentModeScaleAspectFill;
- _videoCoverView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
- [self.contentView addSubview:_videoCoverView];
-
- _videoParentView = [[UIView alloc] initWithFrame:frame];
- _videoParentView.tag = FULL_SCREEN_PLAY_VIDEO_VIEW;
- _videoParentView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
- [self.contentView addSubview:_videoParentView];
-
- _logicView = [[TCPlayDecorateView alloc] initWithFrame:frame];
- _logicView.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
- _logicView.delegate = self;
- [self.contentView addSubview:_logicView];
-
- _reviewLabel = [[UILabel alloc] initWithFrame:CGRectMake(self.contentView.width / 2 - 50, self.contentView.height / 2 - 25 , 100, 50)];
- _reviewLabel.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
- _reviewLabel.textAlignment = NSTextAlignmentCenter;
- _reviewLabel.font = [UIFont systemFontOfSize:18];
- _reviewLabel.textColor = [UIColor whiteColor];
- [self.contentView addSubview:_reviewLabel];
- }
- return self;
- }
- - (void)awakeFromNib {
- [super awakeFromNib];
- // Initialization code
- }
- - (void)prepareForReuse
- {
- [super prepareForReuse];
- [_logicView preprareForReuse];
- }
- -(void)setLiveInfo:(TCLiveInfo *)liveInfo
- {
- [_videoParentView removeAllSubViews];
- ReviewStatus reviewStatus = liveInfo.reviewStatus;
- switch (reviewStatus) {
- case ReviewStatus_Normal:
- {
- if (liveInfo.userinfo.frontcoverImage) {
- [_videoCoverView setImage:liveInfo.userinfo.frontcoverImage];
- }else{
- [_videoCoverView sd_setImageWithURL:[NSURL URLWithString:[TCUtil transImageURL2HttpsURL:liveInfo.userinfo.frontcover]] placeholderImage:[UIImage imageNamed:@"bg.jpg"] completed:^(UIImage *image, NSError *error, SDImageCacheType cacheType, NSURL *imageURL) {
- liveInfo.userinfo.frontcoverImage = image;
- }];
- }
- _reviewLabel.text = @"";
- _logicView.btnChorus.hidden = NO;
- }
- break;
- case ReviewStatus_NotReivew:
- {
- [_videoCoverView setImage:[UIImage imageNamed:@"bg.jpg"]];
- _reviewLabel.text = NSLocalizedString(@"TCPlayViewCell.UncensoredVideo", nil);
- _logicView.btnChorus.hidden = YES;
- }
- break;
- case ReviewStatus_Porn:
- {
- [_videoCoverView setImage:[UIImage imageNamed:@"bg.jpg"]];
- _reviewLabel.text = NSLocalizedString(@"TCPlayViewCell.AdultVideo", nil);
- _logicView.btnChorus.hidden = YES;
- }
- break;
- default:
- break;
- }
- [_logicView setLiveInfo:liveInfo];
- [_logicView.playProgress setValue:0];
- }
- -(void)setPlayLabelText:(NSString *)text
- {
- [_logicView.playLabel setText:text];
- }
- -(void)setPlayProgress:(CGFloat)progress
- {
- [_logicView.playProgress setValue:progress];
- }
- -(void)setPlayBtnImage:(UIImage *)image
- {
- [_logicView.playBtn setImage:image forState:UIControlStateNormal];
- }
- #pragma TCPlayDecorateDelegate
- -(void)closeVC:(BOOL)isRefresh popViewController:(BOOL)popViewController
- {
- [_delegate closeVC:isRefresh popViewController:popViewController];
- }
- -(void)clickScreen:(UITapGestureRecognizer *)gestureRecognizer
- {
- [_delegate clickScreen:gestureRecognizer];
- }
- -(void)clickPlayVod
- {
- [_delegate clickPlayVod];
- }
- -(void)onSeek:(UISlider *)slider
- {
- [_delegate onSeek:slider];
- }
- -(void)onSeekBegin:(UISlider *)slider
- {
- [_delegate onSeekBegin:slider];
- }
- -(void)onDrag:(UISlider *)slider
- {
- [_delegate onDrag:slider];
- }
- -(void)clickLog:(UIButton *)button
- {
- [_delegate clickLog:button];
- }
- -(void)clickChorus:(UIButton *)button
- {
- [_delegate clickChorus:button];
- }
- -(void)clickShare:(UIButton *)button
- {
- [_delegate clickShare:button];
- }
- @end
|