1.播放器的屏幕旋转的问题

1.这里 如果没有中间包的这层allBgView 而是直接把playControlBgView 增加到 self 上 就会出现 self 旋转了 但是 playControlBgView的位置没变

/** 三个大的分类的 view 的父视图 */
-(UIView *)allBgView{
    if(!_allBgView){
        UIView *allBgView = [[UIView alloc] initWithFrame:self.bounds];
        [self addSubview:allBgView];
        _allBgView = allBgView;
    }
    return _allBgView;
}

/** 暂停 声音 进度等控制按钮的背景的 view */
- (DYContainerBgView *)playControlBgView{
    if(!_playControlBgView){
        DYContainerBgView *playControlBgView = [[DYContainerBgView alloc] init];
        playControlBgView.viewLv = DYVideoPlayerViewLv3;
        [self.allBgView adjustSubViewsLv:playControlBgView];
        _playControlBgView = playControlBgView;
        
        [playControlBgView mas_makeConstraints:^(MASConstraintMaker *make) {
            make.left.right.top.bottom.equalTo(self.allBgView);
        }];
    }
    return _playControlBgView;
}

/** 旋转切换 frame 和父视图 */
    [self removeFromSuperview];
    UIView *keyW = [UIApplication sharedApplication].keyWindow;
    [keyW addSubview:self];
    [[UIDevice currentDevice] setValue:[NSNumber numberWithInteger:UIDeviceOrientationLandscapeLeft] forKey:@"orientation"];
    [[UIApplication sharedApplication] setStatusBarOrientation: UIInterfaceOrientationLandscapeRight animated: NO];
    [UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
    [self updateConstraintsIfNeeded];
    [UIView animateWithDuration:0.3 animations:^{
        self.transform = CGAffineTransformMakeRotation(M_PI / 2);
        self.frame = CGRectMake(0, 0, keyW.width, keyW.height);
        self.allBgView.frame = self.bounds;
    }completion:^(BOOL finished) {
        self.fullScreen = YES;
        self.zoomScreenBtn.selected = YES;
        [self.gestureRecognizerBgView addGestureRecognizer:self.panGesture];
    }];
}

/** 重新设置尺寸 */
-(void)setFrame:(CGRect)frame{
    [super setFrame:frame];
    self.allBgView.frame = self.bounds;
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值