1433 lines
48 KiB
Objective-C
1433 lines
48 KiB
Objective-C
//
|
|
// QXRoomSeatView.m
|
|
// QXLive
|
|
//
|
|
// Created by 启星 on 2025/6/7.
|
|
//
|
|
|
|
#import "QXRoomSeatView.h"
|
|
#import "QXRoomSeatTypeSongView.h"
|
|
#import "QXRoomSeatTypeAuctionView.h"
|
|
#import "QXAgoraEngine.h"
|
|
#import "QXRoomOnlineUserListView.h"
|
|
#import "QXRoomSeatTypeCabinView.h"
|
|
#import "QXRoomSeatPKView.h"
|
|
#import "QXRoomSeatTypeFrientView.h"
|
|
#import "QXRoomUserCharmView.h"
|
|
#import "QXRoomSeatTypeSingerView.h"
|
|
|
|
@interface QXRoomSeatView()<QXRoomSeatDelegate>
|
|
/// 二卡八
|
|
@property (nonatomic,strong)QXRoomSeatTypeNormalView *normalSeatView;
|
|
/// K歌房
|
|
@property (nonatomic,strong)QXRoomSeatTypeSongView *songView;
|
|
/// 拍卖房
|
|
@property (nonatomic,strong)QXRoomSeatTypeAuctionView *auctionView;
|
|
/// 在线列表
|
|
@property (nonatomic,strong) QXRoomOnlineUserListView *onlineListView;
|
|
/// 私密小屋
|
|
@property (nonatomic,strong)QXRoomSeatTypeCabinView *cabinView;
|
|
/// PK
|
|
@property (nonatomic,strong)QXRoomSeatPKView *roomPkView;
|
|
/// 交友房
|
|
@property (nonatomic,strong)QXRoomSeatTypeFrientView *roomFriendView;
|
|
|
|
/// 点唱房
|
|
@property (nonatomic,strong)QXRoomSeatTypeSingerView *singerView;
|
|
|
|
@property (nonatomic,strong)QXRoomUserCharmView *charmListView;
|
|
@end
|
|
|
|
|
|
@implementation QXRoomSeatView
|
|
|
|
- (instancetype)initWithType:(QXRoomSeatViewType)type
|
|
{
|
|
self = [super init];
|
|
if (self) {
|
|
_type = type;
|
|
[self setType:type];
|
|
}
|
|
return self;
|
|
}
|
|
|
|
//初始化普通视图
|
|
-(void)initNomarlView{
|
|
if (_singerView) {
|
|
_singerView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_singerView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_singerView destroyViews];
|
|
[self->_singerView removeFromSuperview];
|
|
self->_singerView = nil;
|
|
[self showNormalView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_songView) {
|
|
[[QXAgoraEngine sharedEngine] ktv_EndSing];
|
|
_songView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_songView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_songView destroyViews];
|
|
[self->_songView removeFromSuperview];
|
|
self->_songView = nil;
|
|
[self showNormalView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_auctionView) {
|
|
// [_normalSeatView removeFromSuperview];
|
|
// _normalSeatView = nil;
|
|
[[QXAgoraEngine sharedEngine] ktv_EndSing];
|
|
_auctionView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_auctionView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
if (self->_auctionView.auctionInfoView != nil) {
|
|
[self->_auctionView.auctionInfoView hide];
|
|
}
|
|
[self->_auctionView destroyViews];
|
|
[self->_auctionView removeFromSuperview];
|
|
self->_auctionView = nil;
|
|
[self showNormalView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_roomPkView) {
|
|
_roomPkView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_roomPkView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_roomPkView destroyViews];
|
|
[self->_roomPkView removeFromSuperview];
|
|
self->_roomPkView = nil;
|
|
[self showNormalView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_roomFriendView) {
|
|
_roomFriendView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_roomFriendView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_roomFriendView destroyViews];
|
|
[self->_roomFriendView removeFromSuperview];
|
|
self->_roomFriendView = nil;
|
|
[self showNormalView];
|
|
}];
|
|
return;
|
|
}
|
|
[self addSubview:self.normalSeatView];
|
|
[self.normalSeatView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.left.right.top.bottom.equalTo(self);
|
|
}];
|
|
}
|
|
-(void)showNormalView{
|
|
[self addSubview:self.normalSeatView];
|
|
[self.normalSeatView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.left.right.top.bottom.equalTo(self);
|
|
}];
|
|
self.normalSeatView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self.normalSeatView.transform = CGAffineTransformIdentity;
|
|
} completion:^(BOOL finished) {
|
|
|
|
}];
|
|
}
|
|
//初始化拍卖视图
|
|
-(void)initAuctionView{
|
|
if (_singerView) {
|
|
_singerView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_singerView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_singerView destroyViews];
|
|
[self->_singerView removeFromSuperview];
|
|
self->_singerView = nil;
|
|
[self showAuctionView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_normalSeatView) {
|
|
// [_normalSeatView removeFromSuperview];
|
|
// _normalSeatView = nil;
|
|
_normalSeatView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_normalSeatView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_normalSeatView destroyViews];
|
|
[self->_normalSeatView removeFromSuperview];
|
|
self->_normalSeatView = nil;
|
|
[self showAuctionView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_songView) {
|
|
// [_normalSeatView removeFromSuperview];
|
|
// _normalSeatView = nil;
|
|
[[QXAgoraEngine sharedEngine] ktv_EndSing];
|
|
_songView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_songView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_songView destroyViews];
|
|
[self->_songView removeFromSuperview];
|
|
self->_songView = nil;
|
|
[self showAuctionView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_roomPkView) {
|
|
_roomPkView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_roomPkView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_roomPkView destroyViews];
|
|
[self->_roomPkView removeFromSuperview];
|
|
self->_roomPkView = nil;
|
|
[self showAuctionView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_roomFriendView) {
|
|
_roomFriendView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_roomFriendView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_roomFriendView destroyViews];
|
|
[self->_roomFriendView removeFromSuperview];
|
|
self->_roomFriendView = nil;
|
|
[self addSubview:self.auctionView];
|
|
[self showAuctionView];
|
|
}];
|
|
return;
|
|
}
|
|
[self addSubview:self.auctionView];
|
|
[self.auctionView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.left.right.top.bottom.equalTo(self);
|
|
}];
|
|
}
|
|
-(void)showAuctionView{
|
|
[self addSubview:self.auctionView];
|
|
[self.auctionView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.left.right.top.bottom.equalTo(self);
|
|
}];
|
|
self.auctionView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self.auctionView.transform = CGAffineTransformIdentity;
|
|
} completion:^(BOOL finished) {
|
|
|
|
}];
|
|
}
|
|
|
|
//初始化ktv
|
|
-(void)initSingView{
|
|
if (_singerView) {
|
|
_singerView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_singerView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_singerView destroyViews];
|
|
[self->_singerView removeFromSuperview];
|
|
self->_singerView = nil;
|
|
[self showSongView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_normalSeatView) {
|
|
// [_normalSeatView removeFromSuperview];
|
|
// _normalSeatView = nil;
|
|
_normalSeatView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_normalSeatView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_normalSeatView destroyViews];
|
|
[self->_normalSeatView removeFromSuperview];
|
|
self->_normalSeatView = nil;
|
|
[self showSongView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_auctionView) {
|
|
_auctionView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_auctionView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
if (self->_auctionView.auctionInfoView != nil) {
|
|
[self->_auctionView.auctionInfoView hide];
|
|
}
|
|
[self->_auctionView destroyViews];
|
|
[self->_auctionView removeFromSuperview];
|
|
self->_auctionView = nil;
|
|
[self showSongView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_roomFriendView) {
|
|
_roomFriendView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_roomFriendView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_roomFriendView destroyViews];
|
|
[self->_roomFriendView removeFromSuperview];
|
|
self->_roomFriendView = nil;
|
|
[self showSongView];
|
|
}];
|
|
return;
|
|
}
|
|
[self addSubview:self.songView];
|
|
[self.songView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.left.right.top.bottom.equalTo(self);
|
|
}];
|
|
}
|
|
-(void)showSongView{
|
|
[self addSubview:self.songView];
|
|
[self.songView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.left.right.top.bottom.equalTo(self);
|
|
}];
|
|
self.songView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self.songView.transform = CGAffineTransformIdentity;
|
|
} completion:^(BOOL finished) {
|
|
|
|
}];
|
|
}
|
|
|
|
- (void)initRoomPKView{
|
|
if (_normalSeatView) {
|
|
// [_normalSeatView removeFromSuperview];
|
|
// _normalSeatView = nil;
|
|
_normalSeatView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_normalSeatView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_normalSeatView destroyViews];
|
|
[self->_normalSeatView removeFromSuperview];
|
|
self->_normalSeatView = nil;
|
|
[self addSubview:self.roomPkView];
|
|
[self.roomPkView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.left.right.top.bottom.equalTo(self);
|
|
}];
|
|
self.roomPkView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self.roomPkView.transform = CGAffineTransformIdentity;
|
|
} completion:^(BOOL finished) {
|
|
|
|
}];
|
|
}];
|
|
return;
|
|
}
|
|
[self addSubview:self.roomPkView];
|
|
[self.roomPkView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.left.right.top.bottom.equalTo(self);
|
|
}];
|
|
}
|
|
-(void)initRoomFriendView{
|
|
if (_singerView) {
|
|
_singerView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_singerView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_singerView destroyViews];
|
|
[self->_singerView removeFromSuperview];
|
|
self->_singerView = nil;
|
|
[self showRoomFriendView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_normalSeatView) {
|
|
|
|
_normalSeatView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_normalSeatView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_normalSeatView destroyViews];
|
|
[self->_normalSeatView removeFromSuperview];
|
|
self->_normalSeatView = nil;
|
|
[self showRoomFriendView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_auctionView) {
|
|
_auctionView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_auctionView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
if (self->_auctionView.auctionInfoView != nil) {
|
|
[self->_auctionView.auctionInfoView hide];
|
|
}
|
|
[self->_auctionView destroyViews];
|
|
[self->_auctionView removeFromSuperview];
|
|
self->_auctionView = nil;
|
|
[self showRoomFriendView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_songView) {
|
|
[[QXAgoraEngine sharedEngine] ktv_EndSing];
|
|
_songView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_songView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_songView destroyViews];
|
|
[self->_songView removeFromSuperview];
|
|
self->_songView = nil;
|
|
[self showRoomFriendView];
|
|
}];
|
|
return;
|
|
}
|
|
[self addSubview:self.roomFriendView];
|
|
[self.roomFriendView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.left.right.top.bottom.equalTo(self);
|
|
}];
|
|
}
|
|
-(void)showRoomFriendView{
|
|
[self addSubview:self.roomFriendView];
|
|
[self.roomFriendView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.left.right.top.bottom.equalTo(self);
|
|
}];
|
|
self.roomFriendView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self.roomFriendView.transform = CGAffineTransformIdentity;
|
|
} completion:^(BOOL finished) {
|
|
|
|
}];
|
|
}
|
|
|
|
-(void)initSignerView{
|
|
if (_roomFriendView) {
|
|
_roomFriendView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_roomFriendView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_roomFriendView destroyViews];
|
|
[self->_roomFriendView removeFromSuperview];
|
|
self->_roomFriendView = nil;
|
|
[self showSinggerView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_normalSeatView) {
|
|
// [_normalSeatView removeFromSuperview];
|
|
// _normalSeatView = nil;
|
|
_normalSeatView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_normalSeatView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_normalSeatView destroyViews];
|
|
[self->_normalSeatView removeFromSuperview];
|
|
self->_normalSeatView = nil;
|
|
[self showSinggerView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_auctionView) {
|
|
_auctionView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_auctionView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
if (self->_auctionView.auctionInfoView != nil) {
|
|
[self->_auctionView.auctionInfoView hide];
|
|
}
|
|
[self->_auctionView destroyViews];
|
|
[self->_auctionView removeFromSuperview];
|
|
self->_auctionView = nil;
|
|
[self showSinggerView];
|
|
}];
|
|
return;
|
|
}
|
|
if (_songView) {
|
|
[[QXAgoraEngine sharedEngine] ktv_EndSing];
|
|
_songView.transform = CGAffineTransformIdentity;
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self->_songView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
} completion:^(BOOL finished) {
|
|
[self->_songView destroyViews];
|
|
[self->_songView removeFromSuperview];
|
|
self->_songView = nil;
|
|
[self showSinggerView];
|
|
}];
|
|
return;
|
|
}
|
|
[self addSubview:self.singerView];
|
|
[self.singerView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.left.right.top.bottom.equalTo(self);
|
|
}];
|
|
}
|
|
-(void)showSinggerView{
|
|
[self addSubview:self.singerView];
|
|
[self.singerView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.left.right.top.bottom.equalTo(self);
|
|
}];
|
|
self.singerView.transform = CGAffineTransformMakeScale(0.01, 0.01);
|
|
// 弹性动画
|
|
[UIView animateWithDuration:0.5
|
|
delay:0
|
|
usingSpringWithDamping:0.9
|
|
initialSpringVelocity:0.1
|
|
options:UIViewAnimationOptionCurveEaseOut
|
|
animations:^{
|
|
self.singerView.transform = CGAffineTransformIdentity;
|
|
} completion:^(BOOL finished) {
|
|
|
|
}];
|
|
}
|
|
|
|
- (void)initCabinView{
|
|
self.cabinView = [[QXRoomSeatTypeCabinView alloc] init];
|
|
self.cabinView.delegate = self;
|
|
[self addSubview:self.cabinView];
|
|
[self.cabinView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
make.left.right.top.bottom.equalTo(self);
|
|
}];
|
|
}
|
|
|
|
|
|
|
|
-(void)setMyPitNumber:(NSInteger)myPitNumber{
|
|
_myPitNumber = myPitNumber;
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeNormal:
|
|
self.normalSeatView.myPitNumber = myPitNumber;
|
|
break;
|
|
case QXRoomSeatViewTypeSing:
|
|
self.songView.myPitNumber = myPitNumber;
|
|
break;
|
|
case QXRoomSeatViewTypeAuction:
|
|
self.auctionView.myPitNumber = myPitNumber;
|
|
break;
|
|
case QXRoomSeatViewTypePK:
|
|
self.roomPkView.myPitNumber = myPitNumber;
|
|
break;
|
|
case QXRoomSeatViewTypeFriend:
|
|
self.roomFriendView.myPitNumber = myPitNumber;
|
|
break;
|
|
case QXRoomSeatViewTypeSinger:
|
|
self.singerView.myPitNumber = myPitNumber;
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
|
|
-(void)setType:(QXRoomSeatViewType)type{
|
|
_type = type;
|
|
switch (type) {
|
|
case QXRoomSeatViewTypeNone:{
|
|
|
|
}
|
|
break;
|
|
case QXRoomSeatViewTypeNormal:{
|
|
[self initNomarlView];
|
|
}
|
|
break;
|
|
case QXRoomSeatViewTypeAuction:{
|
|
[self initAuctionView];
|
|
}
|
|
break;
|
|
|
|
case QXRoomSeatViewTypeSing:{
|
|
[self initSingView];
|
|
}
|
|
break;
|
|
|
|
case QXRoomSeatViewTypeCabin:{
|
|
[self initCabinView];
|
|
}
|
|
break;
|
|
case QXRoomSeatViewTypePK:{
|
|
[self initRoomPKView];
|
|
}
|
|
break;
|
|
case QXRoomSeatViewTypeFriend:{
|
|
[self initRoomFriendView];
|
|
}
|
|
break;
|
|
case QXRoomSeatViewTypeSinger:{
|
|
[self initSignerView];
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
-(void)setLrcUrl:(NSString *)lrcUrl{
|
|
if (_songView) {
|
|
_lrcUrl = lrcUrl;
|
|
self.songView.lrcUrl = lrcUrl;
|
|
}
|
|
}
|
|
|
|
-(void)setProgress:(NSUInteger)progress{
|
|
if (_songView) {
|
|
_progress = progress;
|
|
self.songView.progress = progress;
|
|
}
|
|
}
|
|
-(void)setSpeakerPitch:(double)speakerPitch{
|
|
if (_songView) {
|
|
_speakerPitch = speakerPitch;
|
|
self.songView.speakerPitch = speakerPitch;
|
|
}
|
|
}
|
|
-(void)setSongInfo:(QXSongListModel *)songInfo{
|
|
if (_songView) {
|
|
_songInfo = songInfo;
|
|
self.songView.songInfo = songInfo;
|
|
}
|
|
|
|
}
|
|
-(void)setNextInfo:(QXSongListModel *)nextInfo{
|
|
if (_songView) {
|
|
_nextInfo = nextInfo;
|
|
self.songView.nextInfo = nextInfo;
|
|
}
|
|
}
|
|
|
|
|
|
-(void)setRoomModel:(QXRoomModel *)roomModel{
|
|
_roomModel = roomModel;
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeNormal:
|
|
self.normalSeatView.roomModel = roomModel;
|
|
break;
|
|
case QXRoomSeatViewTypeSing:
|
|
self.songView.roomModel = roomModel;
|
|
break;
|
|
case QXRoomSeatViewTypeAuction:
|
|
self.auctionView.roomModel = roomModel;
|
|
break;
|
|
case QXRoomSeatViewTypeCabin:
|
|
self.cabinView.roomModel = roomModel;
|
|
break;
|
|
case QXRoomSeatViewTypePK:
|
|
self.roomPkView.roomModel = roomModel;
|
|
break;
|
|
case QXRoomSeatViewTypeFriend:
|
|
self.roomFriendView.roomModel = roomModel;
|
|
break;
|
|
case QXRoomSeatViewTypeSinger:
|
|
self.singerView.roomModel = roomModel;
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
-(void)setPkRoomModel:(QXRoomModel *)pkRoomModel{
|
|
_pkRoomModel = pkRoomModel;
|
|
if (_roomPkView) {
|
|
self.roomPkView.pkRoomModel = pkRoomModel;
|
|
}
|
|
}
|
|
-(void)previewUserInfoWithUserId:(NSString *)userId{
|
|
[self.onlineListView hide];
|
|
_onlineListView = nil;
|
|
if (self.delegate && [self.delegate respondsToSelector:@selector(didClickUserHeaderWithPitModel:userModel:isPkRoom:pkRoomId:isNoTakeOff:)]) {
|
|
QXRoomOwnerModel *md = [QXRoomOwnerModel new];
|
|
md.user_id = userId;
|
|
[self.delegate didClickUserHeaderWithPitModel:nil userModel:md isPkRoom:NO pkRoomId:@"" isNoTakeOff:NO];
|
|
}
|
|
}
|
|
|
|
-(void)previewRoomUserCharmListWithUserId:(NSString *)userId{
|
|
self.charmListView.roomId = self.roomModel.room_info.room_id;
|
|
self.charmListView.userId = userId;
|
|
[self.charmListView showInView:self.viewController.view];
|
|
}
|
|
|
|
-(void)didClickUserHeaderWithPitModel:(QXRoomPitModel *)pitModel userModel:(id)userModel isPkRoom:(BOOL)isPkRoom pkRoomId:(NSString *)pkRoomId isNoTakeOff:(BOOL)isNoTakeOff{
|
|
if (self.delegate && [self.delegate respondsToSelector:@selector(didClickUserHeaderWithPitModel:userModel:isPkRoom:pkRoomId:isNoTakeOff:)]) {
|
|
[self.delegate didClickUserHeaderWithPitModel:pitModel userModel:userModel isPkRoom:isPkRoom pkRoomId:pkRoomId isNoTakeOff:isNoTakeOff];
|
|
}
|
|
}
|
|
-(void)auctionGiftAction:(QXRoomPitModel *)user auctionId:(NSString *)auctionId{
|
|
if (self.delegate && [self.delegate respondsToSelector:@selector(auctionGiftAction:auctionId:)]) {
|
|
[self.delegate auctionGiftAction:user auctionId:auctionId];
|
|
}
|
|
}
|
|
|
|
-(void)sendGiftWithUser:(QXRoomPitModel *)user{
|
|
if (self.delegate && [self.delegate respondsToSelector:@selector(sendGiftWithUser:)]) {
|
|
[self.delegate sendGiftWithUser:user];
|
|
}
|
|
}
|
|
/// 拍卖类型发生变化
|
|
-(void)auctionTypeDidChanged:(NSString *)type{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
if (_auctionView) {
|
|
[self.auctionView auctionTypeDidChanged:type];
|
|
return;
|
|
}
|
|
}
|
|
-(void)cabinRoomHotValueDidChanged:(NSString *)hot_value{
|
|
if (_cabinView) {
|
|
[self.cabinView cabinRoomHotValueDidChanged:hot_value];
|
|
}
|
|
}
|
|
-(void)clearCharm{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeNormal:
|
|
[self.normalSeatView clearCharm];
|
|
break;
|
|
case QXRoomSeatViewTypeSing:
|
|
[self.songView clearCharm];
|
|
break;
|
|
case QXRoomSeatViewTypeAuction:
|
|
[self.auctionView clearCharm];
|
|
break;
|
|
case QXRoomSeatViewTypeCabin:
|
|
break;
|
|
case QXRoomSeatViewTypePK:
|
|
[self.roomPkView clearCharm];
|
|
break;
|
|
case QXRoomSeatViewTypeFriend:
|
|
[self.roomFriendView clearCharm];
|
|
break;
|
|
case QXRoomSeatViewTypeSinger:
|
|
[self.singerView clearCharm];
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
/// 清除个人魅力
|
|
-(void)roomClearUserCharmWithUserId:(NSString *)userId{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeNormal:
|
|
[self.normalSeatView roomClearUserCharmWithUserId:userId];
|
|
break;
|
|
case QXRoomSeatViewTypeSing:
|
|
[self.songView roomClearUserCharmWithUserId:userId];
|
|
break;
|
|
case QXRoomSeatViewTypeAuction:
|
|
[self.auctionView roomClearUserCharmWithUserId:userId];
|
|
break;
|
|
case QXRoomSeatViewTypeCabin:
|
|
break;
|
|
case QXRoomSeatViewTypePK:
|
|
[self.roomPkView roomClearUserCharmWithUserId:userId];
|
|
break;
|
|
case QXRoomSeatViewTypeFriend:
|
|
[self.roomFriendView roomClearUserCharmWithUserId:userId];
|
|
break;
|
|
case QXRoomSeatViewTypeSinger:
|
|
[self.singerView roomClearUserCharmWithUserId:userId];
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
/// 房间内换麦
|
|
-(void)roomSeatExchangedWithFromPitNumber:(NSInteger)fromPitNumber toPitNumber:(NSInteger)toPitNumber userInfo:(QXUserHomeModel*)userInfo isPK:(BOOL)isPK{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeNormal:
|
|
[self.normalSeatView roomSeatExchangedWithFromPitNumber:fromPitNumber toPitNumber:toPitNumber userInfo:userInfo isPK:isPK];
|
|
break;
|
|
case QXRoomSeatViewTypeSing:
|
|
// [self.songView clearCharm];
|
|
break;
|
|
case QXRoomSeatViewTypeAuction:
|
|
break;
|
|
case QXRoomSeatViewTypeCabin:
|
|
break;
|
|
case QXRoomSeatViewTypePK:
|
|
[self.roomPkView roomSeatExchangedWithFromPitNumber:fromPitNumber toPitNumber:toPitNumber userInfo:userInfo isPK:isPK];
|
|
break;
|
|
case QXRoomSeatViewTypeFriend:
|
|
[self.roomFriendView roomSeatExchangedWithFromPitNumber:fromPitNumber toPitNumber:toPitNumber userInfo:userInfo isPK:isPK];
|
|
break;
|
|
case QXRoomSeatViewTypeSinger:
|
|
[self.singerView roomSeatExchangedWithFromPitNumber:fromPitNumber toPitNumber:toPitNumber userInfo:userInfo isPK:isPK];
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
-(void)setSeatCharmWithUser:(QXUserHomeModel *)model{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeNormal:
|
|
[self.normalSeatView setSeatCharmWithUser:model];
|
|
break;
|
|
case QXRoomSeatViewTypeSing:
|
|
[self.songView setSeatCharmWithUser:model];
|
|
break;
|
|
case QXRoomSeatViewTypeAuction:
|
|
[self.auctionView setSeatCharmWithUser:model];
|
|
break;
|
|
case QXRoomSeatViewTypeCabin:
|
|
// self.cabinView.roomModel = roomModel;
|
|
break;
|
|
case QXRoomSeatViewTypePK:
|
|
[self.roomPkView setSeatCharmWithUser:model];
|
|
break;
|
|
case QXRoomSeatViewTypeFriend:
|
|
[self.roomFriendView setSeatCharmWithUser:model];
|
|
break;
|
|
case QXRoomSeatViewTypeSinger:
|
|
[self.singerView setSeatCharmWithUser:model];
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
-(void)setSeatCharmWithUsers:(NSArray<QXUserHomeModel *> *)users{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeNormal:
|
|
[self.normalSeatView setSeatCharmWithUsers:users];
|
|
break;
|
|
case QXRoomSeatViewTypeSing:
|
|
[self.songView setSeatCharmWithUsers:users];
|
|
break;
|
|
case QXRoomSeatViewTypeAuction:
|
|
[self.auctionView setSeatCharmWithUsers:users];
|
|
break;
|
|
case QXRoomSeatViewTypeCabin:
|
|
// self.cabinView.roomModel = roomModel;
|
|
break;
|
|
case QXRoomSeatViewTypePK:
|
|
[self.roomPkView setSeatCharmWithUsers:users];
|
|
break;
|
|
case QXRoomSeatViewTypeFriend:
|
|
[self.roomFriendView setSeatCharmWithUsers:users];
|
|
break;
|
|
case QXRoomSeatViewTypeSinger:
|
|
[self.singerView setSeatCharmWithUsers:users];
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
-(void)setSeatIsLock:(NSString *)isLock pitNumber:(NSString *)pitNumber{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeNormal:
|
|
[self.normalSeatView setSeatIsLock:isLock pitNumber:pitNumber];
|
|
break;
|
|
case QXRoomSeatViewTypeSing:
|
|
// [self.songView didUpDownSeatWithUser:user isUpSeat:isUpSeat pit_number:pit_number];
|
|
break;
|
|
case QXRoomSeatViewTypeAuction:
|
|
// [self.auctionView didUpDownSeatWithUser:user isUpSeat:isUpSeat pit_number:pit_number];
|
|
break;
|
|
case QXRoomSeatViewTypeCabin:
|
|
// self.cabinView.roomModel = roomModel;
|
|
break;
|
|
case QXRoomSeatViewTypePK:
|
|
[self.roomPkView setSeatIsLock:isLock pitNumber:pitNumber];
|
|
break;
|
|
case QXRoomSeatViewTypeSinger:
|
|
[self.singerView setSeatIsLock:isLock pitNumber:pitNumber];
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
-(void)pkStartWithPkEndTimes:(NSString *)pk_end_times pk_id:(NSString*)pk_id{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
if (_roomPkView) {
|
|
[self.roomPkView pkStartWithPkEndTimes:pk_end_times pk_id:pk_id];
|
|
}
|
|
}
|
|
-(void)roomPKValueDidChangedWithRoomIdA:(NSString*)room_id_a create_value_a:(NSString*)create_value_a room_id_b:(NSString*)room_id_b receive_value_b:(NSString*)receive_value_b{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
if (_roomPkView) {
|
|
[self.roomPkView roomPKValueDidChangedWithRoomIdA:room_id_a create_value_a:create_value_a room_id_b:room_id_b receive_value_b:receive_value_b];
|
|
}
|
|
}
|
|
/// pk结果
|
|
-(void)pkResultWithIsVictory:(NSInteger)isVictory
|
|
end_time:(NSString*)end_time
|
|
victory_name:(NSString*)victory_name
|
|
victory_cover:(NSString*)victory_cover
|
|
defeated_name:(NSString*)defeated_name
|
|
defeated_cover:(NSString*)defeated_cover{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
if (_roomPkView) {
|
|
[self.roomPkView pkResultWithIsVictory:isVictory end_time:end_time victory_name:victory_name victory_cover:victory_cover defeated_name:defeated_name defeated_cover:defeated_cover];
|
|
}
|
|
}
|
|
|
|
#pragma mark - 交友房
|
|
/// 交友房阶段发生变化 step 阶段 1等待 2心动 3牵手 friend_id 场次id
|
|
-(void)friendPartDidChangedWithType:(NSString*)step friend_id:(NSString*)friend_id end_time:(NSString*)end_time relationModel:(QXRoomFriendRelationModel*)relationModel{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeFriend:{
|
|
[self.roomFriendView friendPartDidChangedWithType:step friend_id:friend_id end_time:end_time relationModel:relationModel];
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
/// 交友房时间发生延时 end_time 截止时间
|
|
-(void)friendTimeDelayWithTime:(NSString*)end_time{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeFriend:{
|
|
[self.roomFriendView friendTimeDelayWithTime:end_time];
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
-(void)friendSeatDidChanged:(NSArray<QXRoomPitModel *> *)pitArray{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeFriend:{
|
|
[self.roomFriendView friendSeatDidChanged:pitArray];
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
-(void)friendHeartNumberDidChanged:(NSArray<QXRoomFriendHeartListModel *> *)heartArray{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeFriend:{
|
|
[self.roomFriendView friendHeartNumberDidChanged:heartArray];
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
/// 关系创建完成
|
|
-(void)friendRelationIsCreatedWithrelationModel:(QXRoomFriendRelationModel*)relationModel{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeFriend:{
|
|
[self.roomFriendView friendRelationIsCreatedWithrelationModel:relationModel];
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
/// 有人退出交友房私密小屋
|
|
-(void)friendCabinRoomIsQuit{
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeCabin:{
|
|
[self.cabinView friendCabinRoomIsQuit];
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
/// 私密小屋时间发生延时
|
|
-(void)friendCabinRoomTimeDelayWithTime:(NSString*)end_time{
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeCabin:{
|
|
[self.cabinView friendCabinRoomTimeDelayWithTime:end_time];
|
|
}
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
|
|
/// 助力
|
|
-(void)friendPowerSendGiftWithUser:(QXRoomPitModel *)user heartId:(NSString *)heartId{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
if ([self.delegate respondsToSelector:@selector(friendPowerSendGiftWithUser:heartId:)]) {
|
|
[self.delegate friendPowerSendGiftWithUser:user heartId:heartId];
|
|
}
|
|
}
|
|
|
|
-(QXRoomSeatTypeNormalView *)normalSeatView{
|
|
if (!_normalSeatView) {
|
|
_normalSeatView = [[QXRoomSeatTypeNormalView alloc] init];
|
|
_normalSeatView.delegate = self;
|
|
}
|
|
return _normalSeatView;
|
|
}
|
|
|
|
-(QXRoomSeatTypeSongView *)songView{
|
|
if (!_songView) {
|
|
_songView = [[QXRoomSeatTypeSongView alloc] init];
|
|
_songView.delegate = self;
|
|
}
|
|
return _songView;
|
|
}
|
|
|
|
-(UIView*)getCurrentSeatView{
|
|
if (_normalSeatView) {
|
|
return _normalSeatView;
|
|
}
|
|
if (_songView) {
|
|
return _songView;
|
|
}
|
|
if (_auctionView) {
|
|
return _auctionView;
|
|
}
|
|
return nil;
|
|
}
|
|
|
|
-(void)didHugSeatWithPitNumber:(NSString *)pitNumber{
|
|
[self showOnlineListWithPitNumber:pitNumber];
|
|
}
|
|
-(void)didUpDownSeatWithUser:(QXUserHomeModel *)user isUpSeat:(BOOL)isUpSeat pit_number:(NSInteger)pit_number isPK:(BOOL)isPK{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeNormal:
|
|
[self.normalSeatView didUpDownSeatWithUser:user isUpSeat:isUpSeat pit_number:pit_number isPK:isPK];
|
|
break;
|
|
case QXRoomSeatViewTypeSing:
|
|
[self.songView didUpDownSeatWithUser:user isUpSeat:isUpSeat pit_number:pit_number isPK:isPK];
|
|
break;
|
|
case QXRoomSeatViewTypeAuction:
|
|
[self.auctionView didUpDownSeatWithUser:user isUpSeat:isUpSeat pit_number:pit_number isPK:isPK];
|
|
break;
|
|
case QXRoomSeatViewTypeCabin:
|
|
// self.cabinView.roomModel = roomModel;
|
|
break;
|
|
case QXRoomSeatViewTypePK:
|
|
[self.roomPkView didUpDownSeatWithUser:user isUpSeat:isUpSeat pit_number:pit_number isPK:isPK];
|
|
break;
|
|
case QXRoomSeatViewTypeFriend:
|
|
[self.roomFriendView didUpDownSeatWithUser:user isUpSeat:isUpSeat pit_number:pit_number isPK:isPK];
|
|
break;
|
|
case QXRoomSeatViewTypeSinger:
|
|
[self.singerView didUpDownSeatWithUser:user isUpSeat:isUpSeat pit_number:pit_number isPK:isPK];
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
-(void)didAuctiontUpDownSeatWithUser:(QXUserHomeModel *)user isUpSeat:(BOOL)isUpSeat{
|
|
if (_auctionView) {
|
|
[self.auctionView didAuctiontUpDownSeatWithUser:user isUpSeat:isUpSeat];
|
|
}
|
|
}
|
|
|
|
-(void)auctionStartOrEndIsStart:(BOOL)isStart user:(QXRoomAuctionUser *)user getUser:(QXRoomAuctionUser *)getUser{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
if (_auctionView) {
|
|
[self.auctionView auctionStartOrEndIsStart:isStart user:user getUser:getUser];
|
|
}
|
|
}
|
|
|
|
-(void)auctionListDidChanged:(NSArray<QXRoomPitModel *> *)list{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
if (_auctionView) {
|
|
[self.auctionView auctionListDidChanged:list];
|
|
}
|
|
}
|
|
-(void)auctionDelayTimeWithEndTime:(NSString *)endTime{
|
|
if (self.roomModel == nil) {
|
|
return;
|
|
}
|
|
if (_auctionView) {
|
|
[self.auctionView auctionDelayTimeWithEndTime:endTime];
|
|
}
|
|
}
|
|
|
|
-(void)songRoomCharmRankListDidChanged:(NSArray<QXRoomPitModel *> *)list{
|
|
if (_songView) {
|
|
[self.songView songRoomCharmRankListDidChanged:list];
|
|
}
|
|
}
|
|
|
|
-(void)showOnlineListWithPitNumber:(NSString*)pitNumber{
|
|
self.onlineListView.isHugSeat = YES;
|
|
self.onlineListView.pitNumber = pitNumber;
|
|
self.onlineListView.roomId = self.roomModel.room_info.room_id;
|
|
[self.onlineListView showInView:self.viewController.view];
|
|
}
|
|
/// 点唱房当前歌曲信息发生变化
|
|
-(void)singerSongCurrentSongInfoDidChanged:(QXUserSongListModel*)model{
|
|
if (_singerView) {
|
|
[self.singerView singerSongCurrentSongInfoDidChanged:model];
|
|
}
|
|
}
|
|
/// 点唱房下一首歌信息发生变化
|
|
-(void)singerSongNextSongInfoDidChanged:(QXUserSongListModel*)model{
|
|
if (_singerView) {
|
|
[self.singerView singerSongNextSongInfoDidChanged:model];
|
|
}
|
|
}
|
|
/// 已点歌曲数量发生变化
|
|
-(void)singerSongCountDidChanged:(NSString*)count{
|
|
if (_singerView) {
|
|
[self.singerView singerSongCountDidChanged:count];
|
|
}
|
|
}
|
|
|
|
-(void)roomUserInfoDidChanged:(QXUserHomeModel *)user{
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeNormal:
|
|
[self.normalSeatView roomUserInfoDidChanged:user];
|
|
break;
|
|
case QXRoomSeatViewTypeSing:
|
|
[self.songView roomUserInfoDidChanged:user];
|
|
break;
|
|
case QXRoomSeatViewTypeAuction:
|
|
[self.auctionView roomUserInfoDidChanged:user];
|
|
break;
|
|
case QXRoomSeatViewTypeCabin:
|
|
// self.cabinView.roomModel = roomModel;
|
|
break;
|
|
case QXRoomSeatViewTypePK:
|
|
[self.roomPkView roomUserInfoDidChanged:user];
|
|
break;
|
|
case QXRoomSeatViewTypeFriend:
|
|
[self.roomFriendView roomUserInfoDidChanged:user];
|
|
break;
|
|
case QXRoomSeatViewTypeSinger:
|
|
[self.singerView roomUserInfoDidChanged:user];
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
-(void)stopHWDMP4{
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeNormal:
|
|
[self.normalSeatView stopHWDMP4];
|
|
break;
|
|
case QXRoomSeatViewTypeSing:
|
|
[self.songView stopHWDMP4];
|
|
break;
|
|
case QXRoomSeatViewTypeAuction:
|
|
[self.auctionView stopHWDMP4];
|
|
break;
|
|
case QXRoomSeatViewTypeCabin:
|
|
[self.cabinView stopHWDMP4];
|
|
break;
|
|
case QXRoomSeatViewTypePK:
|
|
[self.roomPkView stopHWDMP4];
|
|
break;
|
|
case QXRoomSeatViewTypeFriend:
|
|
[self.roomFriendView stopHWDMP4];
|
|
break;
|
|
case QXRoomSeatViewTypeSinger:
|
|
[self.singerView stopHWDMP4];
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
-(void)playHWDMP4{
|
|
switch (self.type) {
|
|
case QXRoomSeatViewTypeNormal:
|
|
[self.normalSeatView playHWDMP4];
|
|
break;
|
|
case QXRoomSeatViewTypeSing:
|
|
[self.songView playHWDMP4];
|
|
break;
|
|
case QXRoomSeatViewTypeAuction:
|
|
[self.auctionView playHWDMP4];
|
|
break;
|
|
case QXRoomSeatViewTypeCabin:
|
|
[self.cabinView playHWDMP4];
|
|
break;
|
|
case QXRoomSeatViewTypePK:
|
|
[self.roomPkView playHWDMP4];
|
|
break;
|
|
case QXRoomSeatViewTypeFriend:
|
|
[self.roomFriendView playHWDMP4];
|
|
break;
|
|
case QXRoomSeatViewTypeSinger:
|
|
[self.singerView playHWDMP4];
|
|
break;
|
|
default:
|
|
break;
|
|
}
|
|
}
|
|
-(void)destroyViews{
|
|
if (_normalSeatView) {
|
|
[self.normalSeatView destroyViews];
|
|
_normalSeatView = nil;
|
|
}
|
|
if (_songView) {
|
|
[self.songView destroyViews];
|
|
_songView = nil;
|
|
}
|
|
if (_auctionView) {
|
|
[self.auctionView destroyViews];
|
|
}
|
|
if (_roomPkView) {
|
|
[self.roomPkView destroyViews];
|
|
_roomPkView = nil;
|
|
}
|
|
if (_roomFriendView) {
|
|
[self.roomFriendView destroyViews];
|
|
_roomFriendView = nil;
|
|
}
|
|
if (_cabinView) {
|
|
[self.cabinView destroyViews];
|
|
_cabinView = nil;
|
|
}
|
|
if (_singerView) {
|
|
[self.singerView destroyViews];
|
|
_singerView = nil;
|
|
}
|
|
}
|
|
|
|
-(QXRoomOnlineUserListView *)onlineListView{
|
|
if (!_onlineListView) {
|
|
_onlineListView = [[QXRoomOnlineUserListView alloc] initWithFrame:[UIScreen mainScreen].bounds];
|
|
_onlineListView.delegate = self;
|
|
}
|
|
return _onlineListView;
|
|
}
|
|
-(QXRoomSeatTypeSingerView *)singerView{
|
|
if (!_singerView) {
|
|
_singerView = [[QXRoomSeatTypeSingerView alloc] init];
|
|
_singerView.delegate = self;
|
|
}
|
|
return _singerView;
|
|
}
|
|
-(QXRoomSeatTypeAuctionView *)auctionView{
|
|
if (!_auctionView) {
|
|
_auctionView = [[QXRoomSeatTypeAuctionView alloc] init];
|
|
_auctionView.delegate = self;
|
|
}
|
|
return _auctionView;
|
|
}
|
|
-(QXRoomSeatPKView *)roomPkView{
|
|
if (!_roomPkView) {
|
|
_roomPkView = [[QXRoomSeatPKView alloc] init];
|
|
_roomPkView.delegate = self;
|
|
}
|
|
return _roomPkView;
|
|
}
|
|
-(QXRoomSeatTypeFrientView *)roomFriendView{
|
|
if (!_roomFriendView) {
|
|
_roomFriendView = [[QXRoomSeatTypeFrientView alloc] init];
|
|
_roomFriendView.delegate = self;
|
|
}
|
|
return _roomFriendView;
|
|
}
|
|
|
|
-(QXRoomUserCharmView *)charmListView{
|
|
if (!_charmListView) {
|
|
_charmListView = [[QXRoomUserCharmView alloc] initWithFrame:[UIScreen mainScreen].bounds];
|
|
_charmListView.delegate = self;
|
|
}
|
|
return _charmListView;
|
|
}
|
|
@end
|