相亲模式坑位的显示 目前还有问题 需要解决
This commit is contained in:
@@ -259,6 +259,7 @@
|
|||||||
E884C36C2743951B00E1EBED /* GiftReceiveInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E884C36B2743951B00E1EBED /* GiftReceiveInfoModel.m */; };
|
E884C36C2743951B00E1EBED /* GiftReceiveInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E884C36B2743951B00E1EBED /* GiftReceiveInfoModel.m */; };
|
||||||
E884C36F2743AAC800E1EBED /* AttachmentModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E884C36E2743AAC800E1EBED /* AttachmentModel.m */; };
|
E884C36F2743AAC800E1EBED /* AttachmentModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E884C36E2743AAC800E1EBED /* AttachmentModel.m */; };
|
||||||
E884C3722743AEDE00E1EBED /* CustomAttachmentDecoder.m in Sources */ = {isa = PBXBuildFile; fileRef = E884C3712743AEDE00E1EBED /* CustomAttachmentDecoder.m */; };
|
E884C3722743AEDE00E1EBED /* CustomAttachmentDecoder.m in Sources */ = {isa = PBXBuildFile; fileRef = E884C3712743AEDE00E1EBED /* CustomAttachmentDecoder.m */; };
|
||||||
|
E8899C7F27853B6A007944BE /* DatingMicroView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8899C7E27853B6A007944BE /* DatingMicroView.m */; };
|
||||||
E88B5CA526FB088600DA9178 /* XPMineTeenagerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E88B5CA426FB088600DA9178 /* XPMineTeenagerViewController.m */; };
|
E88B5CA526FB088600DA9178 /* XPMineTeenagerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E88B5CA426FB088600DA9178 /* XPMineTeenagerViewController.m */; };
|
||||||
E88B5CA826FB089C00DA9178 /* XPMineTeenagePwdViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E88B5CA726FB089C00DA9178 /* XPMineTeenagePwdViewController.m */; };
|
E88B5CA826FB089C00DA9178 /* XPMineTeenagePwdViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E88B5CA726FB089C00DA9178 /* XPMineTeenagePwdViewController.m */; };
|
||||||
E88B5CAD26FB16A800DA9178 /* XPMineTeenagerDesView.m in Sources */ = {isa = PBXBuildFile; fileRef = E88B5CAC26FB16A800DA9178 /* XPMineTeenagerDesView.m */; };
|
E88B5CAD26FB16A800DA9178 /* XPMineTeenagerDesView.m in Sources */ = {isa = PBXBuildFile; fileRef = E88B5CAC26FB16A800DA9178 /* XPMineTeenagerDesView.m */; };
|
||||||
@@ -930,6 +931,8 @@
|
|||||||
E884C36E2743AAC800E1EBED /* AttachmentModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AttachmentModel.m; sourceTree = "<group>"; };
|
E884C36E2743AAC800E1EBED /* AttachmentModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AttachmentModel.m; sourceTree = "<group>"; };
|
||||||
E884C3702743AEDE00E1EBED /* CustomAttachmentDecoder.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CustomAttachmentDecoder.h; sourceTree = "<group>"; };
|
E884C3702743AEDE00E1EBED /* CustomAttachmentDecoder.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CustomAttachmentDecoder.h; sourceTree = "<group>"; };
|
||||||
E884C3712743AEDE00E1EBED /* CustomAttachmentDecoder.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CustomAttachmentDecoder.m; sourceTree = "<group>"; };
|
E884C3712743AEDE00E1EBED /* CustomAttachmentDecoder.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CustomAttachmentDecoder.m; sourceTree = "<group>"; };
|
||||||
|
E8899C7D27853B6A007944BE /* DatingMicroView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = DatingMicroView.h; sourceTree = "<group>"; };
|
||||||
|
E8899C7E27853B6A007944BE /* DatingMicroView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = DatingMicroView.m; sourceTree = "<group>"; };
|
||||||
E88B5CA326FB088600DA9178 /* XPMineTeenagerViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineTeenagerViewController.h; sourceTree = "<group>"; };
|
E88B5CA326FB088600DA9178 /* XPMineTeenagerViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineTeenagerViewController.h; sourceTree = "<group>"; };
|
||||||
E88B5CA426FB088600DA9178 /* XPMineTeenagerViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineTeenagerViewController.m; sourceTree = "<group>"; };
|
E88B5CA426FB088600DA9178 /* XPMineTeenagerViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineTeenagerViewController.m; sourceTree = "<group>"; };
|
||||||
E88B5CA626FB089C00DA9178 /* XPMineTeenagePwdViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineTeenagePwdViewController.h; sourceTree = "<group>"; };
|
E88B5CA626FB089C00DA9178 /* XPMineTeenagePwdViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineTeenagePwdViewController.h; sourceTree = "<group>"; };
|
||||||
@@ -2518,6 +2521,7 @@
|
|||||||
E8680707271959090024F48F /* MicroView */ = {
|
E8680707271959090024F48F /* MicroView */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
E8899C7C27853B46007944BE /* Dating */,
|
||||||
180806DA27297269001FD836 /* MicroViewProtocol.h */,
|
180806DA27297269001FD836 /* MicroViewProtocol.h */,
|
||||||
E8680716271967B00024F48F /* MicroView.h */,
|
E8680716271967B00024F48F /* MicroView.h */,
|
||||||
E8680717271967B00024F48F /* MicroView.m */,
|
E8680717271967B00024F48F /* MicroView.m */,
|
||||||
@@ -2525,8 +2529,6 @@
|
|||||||
E81D58812720082A003063FE /* MicroWaveView.m */,
|
E81D58812720082A003063FE /* MicroWaveView.m */,
|
||||||
E8DACCF92766EDC60052092C /* MicroGiftValueView.h */,
|
E8DACCF92766EDC60052092C /* MicroGiftValueView.h */,
|
||||||
E8DACCFA2766EDC60052092C /* MicroGiftValueView.m */,
|
E8DACCFA2766EDC60052092C /* MicroGiftValueView.m */,
|
||||||
E877A7EC278428FB00EFACED /* MicroDatingProgressView.h */,
|
|
||||||
E877A7ED278428FB00EFACED /* MicroDatingProgressView.m */,
|
|
||||||
);
|
);
|
||||||
path = MicroView;
|
path = MicroView;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -2681,6 +2683,17 @@
|
|||||||
path = Tool;
|
path = Tool;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
};
|
};
|
||||||
|
E8899C7C27853B46007944BE /* Dating */ = {
|
||||||
|
isa = PBXGroup;
|
||||||
|
children = (
|
||||||
|
E877A7EC278428FB00EFACED /* MicroDatingProgressView.h */,
|
||||||
|
E877A7ED278428FB00EFACED /* MicroDatingProgressView.m */,
|
||||||
|
E8899C7D27853B6A007944BE /* DatingMicroView.h */,
|
||||||
|
E8899C7E27853B6A007944BE /* DatingMicroView.m */,
|
||||||
|
);
|
||||||
|
path = Dating;
|
||||||
|
sourceTree = "<group>";
|
||||||
|
};
|
||||||
E88B5CA926FB15B900DA9178 /* Teenager */ = {
|
E88B5CA926FB15B900DA9178 /* Teenager */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
@@ -3938,6 +3951,7 @@
|
|||||||
E8AEAEED27141AE20017FCE0 /* XPRoomBackContainerView.m in Sources */,
|
E8AEAEED27141AE20017FCE0 /* XPRoomBackContainerView.m in Sources */,
|
||||||
E88B5CC126FB407B00DA9178 /* XPMineUserInfoViewController.m in Sources */,
|
E88B5CC126FB407B00DA9178 /* XPMineUserInfoViewController.m in Sources */,
|
||||||
18F4043A275E20D900A6C548 /* TRTCRtcImpl.m in Sources */,
|
18F4043A275E20D900A6C548 /* TRTCRtcImpl.m in Sources */,
|
||||||
|
E8899C7F27853B6A007944BE /* DatingMicroView.m in Sources */,
|
||||||
E824545926F5E65900BE8163 /* XPMineVerifIdentityView.m in Sources */,
|
E824545926F5E65900BE8163 /* XPMineVerifIdentityView.m in Sources */,
|
||||||
189DD74026E21C3F00AB55B1 /* YYUtility+App.m in Sources */,
|
189DD74026E21C3F00AB55B1 /* YYUtility+App.m in Sources */,
|
||||||
189DD74526E21CCC00AB55B1 /* YYReachability.m in Sources */,
|
189DD74526E21CCC00AB55B1 /* YYReachability.m in Sources */,
|
||||||
|
21
xplan-ios/Assets.xcassets/Room/Dating/room_mode_dating_vip.imageset/Contents.json
vendored
Normal file
21
xplan-ios/Assets.xcassets/Room/Dating/room_mode_dating_vip.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "room_mode_dating_vip.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
BIN
xplan-ios/Assets.xcassets/Room/Dating/room_mode_dating_vip.imageset/room_mode_dating_vip.png
vendored
Normal file
BIN
xplan-ios/Assets.xcassets/Room/Dating/room_mode_dating_vip.imageset/room_mode_dating_vip.png
vendored
Normal file
Binary file not shown.
After Width: | Height: | Size: 17 KiB |
21
xplan-ios/Assets.xcassets/Room/Dating/room_mode_dating_vip_title.imageset/Contents.json
vendored
Normal file
21
xplan-ios/Assets.xcassets/Room/Dating/room_mode_dating_vip_title.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "room_mode_dating_vip_title.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
Binary file not shown.
After Width: | Height: | Size: 19 KiB |
@@ -69,7 +69,16 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
///用户信息中的 头饰的动画 如果没有的话 就用这个 并不需要HeadwearModel 映射一下吧
|
///用户信息中的 头饰的动画 如果没有的话 就用这个 并不需要HeadwearModel 映射一下吧
|
||||||
@property (nonatomic,copy) NSString *headwearPic;
|
@property (nonatomic,copy) NSString *headwearPic;
|
||||||
///头饰(新字段) 上麦的时候 在扩展字段中的 只用在坑位上
|
///头饰(新字段) 上麦的时候 在扩展字段中的 只用在坑位上
|
||||||
@property (nonatomic, copy) NSString *headWearUrl;
|
@property (nonatomic,copy) NSString *headWearUrl;
|
||||||
|
#pragma mark - 相亲房的字段
|
||||||
|
///是否为相亲模式VIP坑位
|
||||||
|
@property (nonatomic,assign) BOOL vipMic;
|
||||||
|
///帽子 相亲中收到礼物值最高的那个人 男神 女神都有
|
||||||
|
@property (nonatomic,copy) NSString *capUrl;
|
||||||
|
///是不是选择了人
|
||||||
|
@property (nonatomic,assign) BOOL hasSelectUser;
|
||||||
|
///所选择的麦序
|
||||||
|
@property (nonatomic,assign) int selectMicPosition;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
NS_ASSUME_NONNULL_END
|
NS_ASSUME_NONNULL_END
|
||||||
|
@@ -41,7 +41,9 @@ typedef NS_ENUM(NSUInteger, URLType) {
|
|||||||
///平台榜单入口
|
///平台榜单入口
|
||||||
kHomeRankURL,
|
kHomeRankURL,
|
||||||
///房间礼物值 跳转
|
///房间礼物值 跳转
|
||||||
kRoomCharmRankUrl
|
kRoomCharmRankUrl,
|
||||||
|
///相亲规则介绍
|
||||||
|
kRoomDatingRule
|
||||||
};
|
};
|
||||||
|
|
||||||
NSString * const URLWithType(URLType type);
|
NSString * const URLWithType(URLType type);
|
||||||
|
@@ -33,6 +33,7 @@ NSString * const URLWithType(URLType type) {
|
|||||||
@(kUserLevelURL) : @"modules/level/index.html",//我的等级
|
@(kUserLevelURL) : @"modules/level/index.html",//我的等级
|
||||||
@(kHomeRankURL) : @"modules/rank/index.html#/rank", // 排行榜
|
@(kHomeRankURL) : @"modules/rank/index.html#/rank", // 排行榜
|
||||||
@(kRoomCharmRankUrl) : @"modules/charm/index.html",//房间魅力
|
@(kRoomCharmRankUrl) : @"modules/charm/index.html",//房间魅力
|
||||||
|
@(kRoomDatingRule) : @"modules/rule/dating.html",//相亲玩法
|
||||||
};
|
};
|
||||||
NSString * url = [dic objectForKey:@(type)];
|
NSString * url = [dic objectForKey:@(type)];
|
||||||
|
|
||||||
|
@@ -61,7 +61,7 @@ static CGFloat const kContentAspectRatio = 2/3.f;
|
|||||||
[self.webVC.view mas_makeConstraints:^(MASConstraintMaker *make) {
|
[self.webVC.view mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.left.right.mas_equalTo(self.backImageView).inset(30);
|
make.left.right.mas_equalTo(self.backImageView).inset(30);
|
||||||
make.bottom.mas_equalTo(self.backImageView).offset(-20);
|
make.bottom.mas_equalTo(self.backImageView).offset(-20);
|
||||||
make.top.mas_equalTo(self.backImageView);
|
make.top.mas_equalTo(self.backImageView).offset(45);
|
||||||
}];
|
}];
|
||||||
|
|
||||||
|
|
||||||
|
@@ -6,10 +6,13 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "DatingStageView.h"
|
#import "DatingStageView.h"
|
||||||
#import "MicroView.h"
|
///Third
|
||||||
#import "MicroGiftValueView.h"
|
#import <Masonry/Masonry.h>
|
||||||
|
#import <NIMSDK/NIMSDK.h>
|
||||||
|
#import "DatingMicroView.h"
|
||||||
#import "XPMacro.h"
|
#import "XPMacro.h"
|
||||||
#import "RoomInfoModel.h"
|
#import "RoomInfoModel.h"
|
||||||
|
#import "MicroDatingProgressView.h"
|
||||||
// 房主头像宽 58 + 光圈 5
|
// 房主头像宽 58 + 光圈 5
|
||||||
#define ownerWidth (58 + 5)
|
#define ownerWidth (58 + 5)
|
||||||
// 昵称高12,距离头像间距 6
|
// 昵称高12,距离头像间距 6
|
||||||
@@ -32,8 +35,27 @@
|
|||||||
// 第一行坑位的顶部
|
// 第一行坑位的顶部
|
||||||
#define secondRowTop (firstRowTop + mcHeight + 27)
|
#define secondRowTop (firstRowTop + mcHeight + 27)
|
||||||
|
|
||||||
|
@interface DatingStageView()
|
||||||
|
///相亲进行的阶段
|
||||||
|
@property (nonatomic,strong) MicroDatingProgressView *datingProgressView;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
@implementation DatingStageView
|
@implementation DatingStageView
|
||||||
|
|
||||||
|
- (instancetype)initWithDelegate:(id<RoomHostDelegate>)delegate {
|
||||||
|
if (self = [super initWithDelegate:delegate]) {
|
||||||
|
[self addSubview:self.datingProgressView];
|
||||||
|
[self.datingProgressView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.mas_equalTo(dateingWidth);
|
||||||
|
make.bottom.mas_equalTo(self);
|
||||||
|
make.centerX.mas_equalTo(self);
|
||||||
|
make.top.mas_equalTo(firstRowTop);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
|
||||||
- (NSInteger)countOfMircoView {
|
- (NSInteger)countOfMircoView {
|
||||||
return 10;
|
return 10;
|
||||||
}
|
}
|
||||||
@@ -43,7 +65,7 @@
|
|||||||
if (microView) {
|
if (microView) {
|
||||||
return microView;
|
return microView;
|
||||||
}
|
}
|
||||||
return [[MicroView alloc]init];
|
return [[DatingMicroView alloc]init];
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -106,8 +128,23 @@
|
|||||||
* index 处的坑位点击事件
|
* index 处的坑位点击事件
|
||||||
*/
|
*/
|
||||||
- (void)didSelectAtIndex:(NSInteger)index {
|
- (void)didSelectAtIndex:(NSInteger)index {
|
||||||
NSLog(@"%d", index);
|
|
||||||
[super didSelectAtIndex:index];
|
[super didSelectAtIndex:index];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
- (void)onRoomUpdate {
|
||||||
|
[super onRoomUpdate];
|
||||||
|
if (self.hostDelegate.getRoomInfo.roomModeType == RoomModeType_Open_Blind) {
|
||||||
|
self.datingProgressView.blindDateState = self.hostDelegate.getRoomInfo.blindDateState;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
- (MicroDatingProgressView *)datingProgressView {
|
||||||
|
if (!_datingProgressView) {
|
||||||
|
_datingProgressView = [[MicroDatingProgressView alloc] init];
|
||||||
|
}
|
||||||
|
return _datingProgressView;
|
||||||
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
@@ -0,0 +1,16 @@
|
|||||||
|
//
|
||||||
|
// DatingMicroView.h
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by 冯硕 on 2022/1/5.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MicroView.h"
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface DatingMicroView : MicroView
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,231 @@
|
|||||||
|
//
|
||||||
|
// DatingMicroView.m
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by 冯硕 on 2022/1/5.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "DatingMicroView.h"
|
||||||
|
///Third
|
||||||
|
#import <Masonry/Masonry.h>
|
||||||
|
///Tool
|
||||||
|
#import "NetImageView.h"
|
||||||
|
#import "AccountInfoStorage.h"
|
||||||
|
|
||||||
|
@interface DatingMicroView ()
|
||||||
|
///相亲模式的 帽子的图片
|
||||||
|
@property (nonatomic,strong) NetImageView *capImageView;
|
||||||
|
///是不是选择了人
|
||||||
|
@property (nonatomic,strong) UIButton *pickButton;
|
||||||
|
///相亲是男方 还是女方
|
||||||
|
@property (nonatomic,strong) UIImageView *datingTypeView;
|
||||||
|
///是否是主持
|
||||||
|
@property (nonatomic,assign) BOOL isEmcee;
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation DatingMicroView
|
||||||
|
|
||||||
|
- (void)initSubViews {
|
||||||
|
[super initSubViews];
|
||||||
|
[self insertSubview:self.datingTypeView aboveSubview:self.getAvatarView];
|
||||||
|
[self addSubview:self.capImageView];
|
||||||
|
[self addSubview:self.pickButton];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
- (void)initSubViewConstraints {
|
||||||
|
[super initSubViewConstraints];
|
||||||
|
[self.capImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.edges.mas_equalTo(self.getAvatarView);
|
||||||
|
}];
|
||||||
|
|
||||||
|
[self.pickButton mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.size.mas_equalTo(CGSizeMake(37, 14));
|
||||||
|
make.centerX.mas_equalTo(self.getAvatarView);
|
||||||
|
make.centerY.mas_equalTo(self.getAvatarView.mas_bottom).mas_offset(-2);
|
||||||
|
}];
|
||||||
|
|
||||||
|
[self.datingTypeView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.edges.mas_equalTo(self.getAvatarView);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
- (void)configMicroView:(MicroQueueModel *)model {
|
||||||
|
[super configMicroView:model];
|
||||||
|
RoomInfoModel * roomInfo = self.getRoomInfo;
|
||||||
|
UserInfoModel * userInfo = model.userInfo;
|
||||||
|
NSMutableDictionary * micQueue = [self getMicroQueue];
|
||||||
|
NSString * typeImageName = @"";
|
||||||
|
int position = model.microState.position;
|
||||||
|
if (position == 0 || position == 1 || position == 4 || position == 5) {
|
||||||
|
typeImageName = @"room_position_dating_male_bg";
|
||||||
|
} else if(position == 2 || position == 3 || position == 6 || position == 7){
|
||||||
|
typeImageName = @"room_position_dating_female_bg";
|
||||||
|
}
|
||||||
|
self.datingTypeView.image = [UIImage imageNamed:typeImageName];
|
||||||
|
///相亲的帽子
|
||||||
|
if (userInfo && userInfo.capUrl.length > 0) {
|
||||||
|
self.datingTypeView.image = [UIImage imageNamed:typeImageName];
|
||||||
|
self.datingTypeView.hidden = NO;
|
||||||
|
} else {
|
||||||
|
self.capImageView.hidden = YES;
|
||||||
|
}
|
||||||
|
///相亲进行的阶段
|
||||||
|
if (position == -1) {
|
||||||
|
self.pickButton.hidden = YES;
|
||||||
|
} else {
|
||||||
|
if (roomInfo.blindDateState == RoomPlayDateingType_Pick) {
|
||||||
|
///如果我是主持的话 主持人视角 可以看到麦上用户的选择情况,精准到选择对象
|
||||||
|
if (self.isEmcee) {
|
||||||
|
if (userInfo) {
|
||||||
|
self.pickButton.hidden = NO;
|
||||||
|
if (userInfo.vipMic || position == 999) {
|
||||||
|
///是不是选择了人
|
||||||
|
if (userInfo.hasSelectUser) {
|
||||||
|
[self.pickButton setTitle:[NSString stringWithFormat:@"选%d号", (userInfo.selectMicPosition + 1)] forState:UIControlStateNormal];
|
||||||
|
[self.pickButton setBackgroundImage:nil forState:UIControlStateNormal];
|
||||||
|
} else {
|
||||||
|
[self.pickButton setTitle:@"未选择" forState:UIControlStateNormal];
|
||||||
|
[self.pickButton setBackgroundImage:nil forState:UIControlStateNormal];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
///是不是选择了人
|
||||||
|
if (userInfo.hasSelectUser) {
|
||||||
|
MicroQueueModel *sequence = [micQueue objectForKey:[NSString stringWithFormat:@"%d", userInfo.selectMicPosition]];
|
||||||
|
NSString *selectNum;
|
||||||
|
if (sequence.userInfo.vipMic) {
|
||||||
|
selectNum = @"选VIP";
|
||||||
|
} else {
|
||||||
|
selectNum = [NSString stringWithFormat:@"选%d号", (userInfo.selectMicPosition + 1)];
|
||||||
|
}
|
||||||
|
if (model.microState.datingMicType == DatingMicType_Male) {
|
||||||
|
[self configPickTitle:selectNum backmImageName:@"room_mode_dating_male_select"];
|
||||||
|
} else {
|
||||||
|
[self configPickTitle:selectNum backmImageName:@"room_mode_dating_female_select"];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
[self configPickTitle:@"未选择" backmImageName:@"room_mode_dating_not_select"];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
///观众视角视角 嘉宾视角 可以查看其他用户是否选择了心动对象
|
||||||
|
if (userInfo) {
|
||||||
|
self.pickButton.hidden = NO;
|
||||||
|
if (userInfo.vipMic || position ==999) {
|
||||||
|
///是不是选择了人
|
||||||
|
if (userInfo.hasSelectUser) {
|
||||||
|
///如果是自己的话
|
||||||
|
if (userInfo.uid == [AccountInfoStorage instance].getUid.integerValue) {
|
||||||
|
[self.pickButton setTitle:[NSString stringWithFormat:@"选%d号", (userInfo.selectMicPosition + 1)] forState:UIControlStateNormal];
|
||||||
|
[self.pickButton setBackgroundImage:nil forState:UIControlStateNormal];
|
||||||
|
} else {
|
||||||
|
[self.pickButton setTitle:@"已选择" forState:UIControlStateNormal];
|
||||||
|
[self.pickButton setBackgroundImage:nil forState:UIControlStateNormal];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
[self.pickButton setTitle:@"未选择" forState:UIControlStateNormal];
|
||||||
|
[self.pickButton setBackgroundImage:nil forState:UIControlStateNormal];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
///是不是选择了人
|
||||||
|
if (userInfo.hasSelectUser) {
|
||||||
|
///如果是自己的话
|
||||||
|
if (userInfo.uid == [AccountInfoStorage instance].getUid.integerValue) {
|
||||||
|
MicroQueueModel *sequence = [micQueue objectForKey:[NSString stringWithFormat:@"%d", userInfo.selectMicPosition]];
|
||||||
|
NSString *selectNum;
|
||||||
|
if (sequence.userInfo.vipMic) {
|
||||||
|
selectNum = @"选VIP";
|
||||||
|
} else {
|
||||||
|
selectNum = [NSString stringWithFormat:@"选%d号", (userInfo.selectMicPosition + 1)];
|
||||||
|
}
|
||||||
|
if (model.microState.datingMicType == DatingMicType_Male) {
|
||||||
|
[self configPickTitle:selectNum backmImageName:@"room_mode_dating_male_select"];
|
||||||
|
} else {
|
||||||
|
[self configPickTitle:selectNum backmImageName:@"room_mode_dating_female_select"];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (model.microState.datingMicType == DatingMicType_Male) {
|
||||||
|
[self configPickTitle:@"已选择" backmImageName:@"room_mode_dating_male_select"];
|
||||||
|
} else {
|
||||||
|
[self configPickTitle:@"已选择" backmImageName:@"room_mode_dating_female_select"];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
[self configPickTitle:@"未选择" backmImageName:@"room_mode_dating_not_select"];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else if(roomInfo.blindDateState == RoomPlayDateingType_Result || roomInfo.blindDateState == RoomPlayDateingType_Finish) {
|
||||||
|
///公布结果的时候 都可以看到
|
||||||
|
if (userInfo) {
|
||||||
|
self.pickButton.hidden = NO;
|
||||||
|
if (userInfo.vipMic || position == 999) {
|
||||||
|
///是不是选择了人
|
||||||
|
if (userInfo.hasSelectUser) {
|
||||||
|
[self.pickButton setTitle:[NSString stringWithFormat:@"选%d号", (userInfo.selectMicPosition + 1)] forState:UIControlStateNormal];
|
||||||
|
[self.pickButton setBackgroundImage:nil forState:UIControlStateNormal];
|
||||||
|
} else {
|
||||||
|
[self.pickButton setTitle:@"未选择" forState:UIControlStateNormal];
|
||||||
|
[self.pickButton setBackgroundImage:nil forState:UIControlStateNormal];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
///是不是选择了人
|
||||||
|
if (userInfo.hasSelectUser) {
|
||||||
|
MicroQueueModel *sequence = [micQueue objectForKey:[NSString stringWithFormat:@"%d", userInfo.selectMicPosition]];
|
||||||
|
NSString *selectNum;
|
||||||
|
if (sequence.userInfo.vipMic) {
|
||||||
|
selectNum = @"选VIP";
|
||||||
|
} else {
|
||||||
|
selectNum = [NSString stringWithFormat:@"选%d号", (userInfo.selectMicPosition + 1)];
|
||||||
|
}
|
||||||
|
if (model.microState.datingMicType == DatingMicType_Male) {
|
||||||
|
[self configPickTitle:selectNum backmImageName:@"room_mode_dating_male_select"];
|
||||||
|
} else {
|
||||||
|
[self configPickTitle:selectNum backmImageName:@"room_mode_dating_female_select"];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
[self configPickTitle:@"未选择" backmImageName:@"room_mode_dating_not_select"];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)configPickTitle:(NSString *)title backmImageName:(NSString *)backImageName {
|
||||||
|
[self.pickButton setTitle:title forState:UIControlStateNormal];
|
||||||
|
[self.pickButton setBackgroundImage:[UIImage imageNamed:backImageName] forState:UIControlStateNormal];
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
- (UIImageView *)datingTypeView {
|
||||||
|
if (!_datingTypeView) {
|
||||||
|
_datingTypeView = [[UIImageView alloc] init];
|
||||||
|
_datingTypeView.userInteractionEnabled = YES;
|
||||||
|
}
|
||||||
|
return _datingTypeView;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (NetImageView *)capImageView {
|
||||||
|
if (!_capImageView) {
|
||||||
|
_capImageView = [[NetImageView alloc] init];
|
||||||
|
}
|
||||||
|
return _capImageView;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (UIButton *)pickButton {
|
||||||
|
if (!_pickButton) {
|
||||||
|
_pickButton = [UIButton buttonWithType:UIButtonTypeCustom];
|
||||||
|
[_pickButton setTitle:@"未选择" forState:UIControlStateNormal];
|
||||||
|
_pickButton.titleLabel.font = [UIFont systemFontOfSize:9];
|
||||||
|
_pickButton.userInteractionEnabled = NO;
|
||||||
|
_pickButton.hidden = YES;
|
||||||
|
}
|
||||||
|
return _pickButton;
|
||||||
|
}
|
||||||
|
|
||||||
|
@end
|
@@ -10,7 +10,7 @@
|
|||||||
NS_ASSUME_NONNULL_BEGIN
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
@interface MicroDatingProgressView : UIView
|
@interface MicroDatingProgressView : UIView
|
||||||
///
|
///相亲的阶段
|
||||||
@property (nonatomic,assign) RoomPlayDateingType blindDateState;
|
@property (nonatomic,assign) RoomPlayDateingType blindDateState;
|
||||||
@end
|
@end
|
||||||
|
|
@@ -11,6 +11,9 @@
|
|||||||
///Tool
|
///Tool
|
||||||
#import "ThemeColor.h"
|
#import "ThemeColor.h"
|
||||||
#import "TTPopup.h"
|
#import "TTPopup.h"
|
||||||
|
#import "XPHtmlUrl.h"
|
||||||
|
///View
|
||||||
|
#import "XPRoomDatingWebAlertView.h"
|
||||||
|
|
||||||
@interface MicroDatingProgressView ()
|
@interface MicroDatingProgressView ()
|
||||||
///心动现场
|
///心动现场
|
||||||
@@ -34,30 +37,28 @@
|
|||||||
- (void)initSubViews {
|
- (void)initSubViews {
|
||||||
[self addSubview:self.heartSceneImageView];
|
[self addSubview:self.heartSceneImageView];
|
||||||
[self addSubview:self.talkButton];
|
[self addSubview:self.talkButton];
|
||||||
|
|
||||||
UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(didTapRecognizer)];
|
|
||||||
[self addGestureRecognizer:tap];
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)initSubViewConstraints {
|
- (void)initSubViewConstraints {
|
||||||
[self.heartSceneImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
[self.heartSceneImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.size.mas_equalTo(CGSizeMake(95, 84));
|
make.size.mas_equalTo(CGSizeMake(95, 84));
|
||||||
make.top.centerX.mas_equalTo(self);
|
make.centerX.mas_equalTo(self);
|
||||||
|
make.top.mas_equalTo(self).offset(12);
|
||||||
}];
|
}];
|
||||||
|
|
||||||
[self.talkButton mas_makeConstraints:^(MASConstraintMaker *make) {
|
[self.talkButton mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.top.mas_equalTo(self.heartSceneImageView.mas_bottom).offset(7);
|
make.top.mas_equalTo(self.heartSceneImageView.mas_bottom).offset(8);
|
||||||
make.size.mas_equalTo(CGSizeMake(65, 21));
|
make.size.mas_equalTo(CGSizeMake(65, 21));
|
||||||
make.centerX.mas_equalTo(self.heartSceneImageView);
|
make.centerX.mas_equalTo(self.heartSceneImageView);
|
||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark - Event Response
|
#pragma mark - Event Response
|
||||||
- (void)didTapRecognizer {
|
- (void)tapDatingRuleRecognizer {
|
||||||
[TTPopup dismiss];
|
[TTPopup dismiss];
|
||||||
// RoomDatingWebView * webView = [[RoomDatingWebView alloc] init];
|
XPRoomDatingWebAlertView * webView = [[XPRoomDatingWebAlertView alloc] init];
|
||||||
// webView.url = HtmlUrlKey(kRoomDatingRule);
|
webView.url = URLWithType(kRoomDatingRule);
|
||||||
// [TTPopup popupView:webView style:TTPopupStyleAlert];
|
[TTPopup popupView:webView style:TTPopupStyleAlert];
|
||||||
}
|
}
|
||||||
|
|
||||||
#pragma mark - Getters And Setters
|
#pragma mark - Getters And Setters
|
||||||
@@ -72,7 +73,7 @@
|
|||||||
talkTitle = @"心动选人";
|
talkTitle = @"心动选人";
|
||||||
break;
|
break;
|
||||||
case RoomPlayDateingType_Result:
|
case RoomPlayDateingType_Result:
|
||||||
talkTitle = @"心动公布";
|
talkTitle = @"公布心动";
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
@@ -84,6 +85,9 @@
|
|||||||
if (!_heartSceneImageView) {
|
if (!_heartSceneImageView) {
|
||||||
_heartSceneImageView = [[UIImageView alloc] init];
|
_heartSceneImageView = [[UIImageView alloc] init];
|
||||||
_heartSceneImageView.userInteractionEnabled = YES;
|
_heartSceneImageView.userInteractionEnabled = YES;
|
||||||
|
_heartSceneImageView.image = [UIImage imageNamed:@"room_mode_dating_heart_icon"];
|
||||||
|
UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(tapDatingRuleRecognizer)];
|
||||||
|
[_heartSceneImageView addGestureRecognizer:tap];
|
||||||
}
|
}
|
||||||
return _heartSceneImageView;
|
return _heartSceneImageView;
|
||||||
}
|
}
|
||||||
@@ -95,8 +99,7 @@
|
|||||||
[_talkButton setTitleColor:UIColorFromRGB(0xFFE1E8) forState:UIControlStateNormal];
|
[_talkButton setTitleColor:UIColorFromRGB(0xFFE1E8) forState:UIControlStateNormal];
|
||||||
_talkButton.titleLabel.font = [UIFont boldSystemFontOfSize:13];
|
_talkButton.titleLabel.font = [UIFont boldSystemFontOfSize:13];
|
||||||
_talkButton.titleLabel.textAlignment = NSTextAlignmentCenter;
|
_talkButton.titleLabel.textAlignment = NSTextAlignmentCenter;
|
||||||
[_talkButton setBackgroundImage:[UIImage imageNamed:@"room_dating_progress_bg"] forState:UIControlStateNormal];
|
[_talkButton setBackgroundImage:[UIImage imageNamed:@"room_mode_dating_progress_bg"] forState:UIControlStateNormal];
|
||||||
[_talkButton addTarget:self action:@selector(roomdatingRuleAction:) forControlEvents:UIControlEventTouchUpInside];
|
|
||||||
}
|
}
|
||||||
return _talkButton;
|
return _talkButton;
|
||||||
}
|
}
|
@@ -7,8 +7,8 @@
|
|||||||
|
|
||||||
#import <UIKit/UIKit.h>
|
#import <UIKit/UIKit.h>
|
||||||
#import "MicroViewProtocol.h"
|
#import "MicroViewProtocol.h"
|
||||||
|
#import "NetImageView.h"
|
||||||
NS_ASSUME_NONNULL_BEGIN
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
@interface MicroView : UIView<MicroViewProtocol>
|
@interface MicroView : UIView<MicroViewProtocol>
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
@@ -21,10 +21,6 @@
|
|||||||
#import "SpriteSheetImageManager.h"
|
#import "SpriteSheetImageManager.h"
|
||||||
#import "XPMacro.h"
|
#import "XPMacro.h"
|
||||||
|
|
||||||
#import "MicroQueueModel.h"
|
|
||||||
#import "MicroStateModel.h"
|
|
||||||
#import "UserInfoModel.h"
|
|
||||||
|
|
||||||
@interface MicroView ()<CAAnimationDelegate>
|
@interface MicroView ()<CAAnimationDelegate>
|
||||||
///头像
|
///头像
|
||||||
@property (nonatomic,strong) NetImageView *avatarImageView;
|
@property (nonatomic,strong) NetImageView *avatarImageView;
|
||||||
@@ -44,16 +40,17 @@
|
|||||||
@property (nonatomic,strong) MicroGiftValueView *giftValueView;
|
@property (nonatomic,strong) MicroGiftValueView *giftValueView;
|
||||||
///麦序的信息
|
///麦序的信息
|
||||||
@property (nonatomic,strong) MicroQueueModel *microModel;
|
@property (nonatomic,strong) MicroQueueModel *microModel;
|
||||||
///房主的Uid
|
|
||||||
@property (nonatomic,copy) NSString *roomUid;
|
|
||||||
///麦位的用户信息
|
///麦位的用户信息
|
||||||
@property (nonatomic,strong) UserInfoModel *userInfo;
|
@property (nonatomic,strong) UserInfoModel *userInfo;
|
||||||
|
///当前房间的信息
|
||||||
|
@property (nonatomic,strong) RoomInfoModel *roomInfo;
|
||||||
///头饰
|
///头饰
|
||||||
@property (nonatomic,strong) YYAnimatedImageView *headWearImageView;
|
@property (nonatomic,strong) YYAnimatedImageView *headWearImageView;
|
||||||
///头饰播放
|
///头饰播放
|
||||||
@property (nonatomic, strong) SpriteSheetImageManager *manager;
|
@property (nonatomic, strong) SpriteSheetImageManager *manager;
|
||||||
///相亲是男方 还是女方
|
///当前的麦序
|
||||||
@property (nonatomic,strong) UIImageView *datingTypeView;
|
@property (nonatomic,strong) NSMutableDictionary<NSString *,MicroQueueModel *> *micQueue;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
|
|
||||||
@@ -135,6 +132,10 @@
|
|||||||
}];
|
}];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (UIView *)getAvatarView {
|
||||||
|
return self.avatarImageView;
|
||||||
|
}
|
||||||
|
|
||||||
#pragma mark - MicroViewProtocol
|
#pragma mark - MicroViewProtocol
|
||||||
- (void)showLeaveMode:(BOOL)isLeaveMode {
|
- (void)showLeaveMode:(BOOL)isLeaveMode {
|
||||||
if (isLeaveMode) {
|
if (isLeaveMode) {
|
||||||
@@ -175,8 +176,7 @@
|
|||||||
[image drawInRect:CGRectMake(1, 1, scaledToSize.width - 2, scaledToSize.height - 2)];
|
[image drawInRect:CGRectMake(1, 1, scaledToSize.width - 2, scaledToSize.height - 2)];
|
||||||
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
|
UIImage *newImage = UIGraphicsGetImageFromCurrentImageContext();
|
||||||
UIGraphicsEndImageContext();
|
UIGraphicsEndImageContext();
|
||||||
UIColor * image1 = [UIColor colorWithPatternImage:newImage];
|
self.avatarImageView.backgroundColor = [UIColor colorWithPatternImage:newImage];
|
||||||
self.avatarImageView.image = newImage;
|
|
||||||
self.postionLabel.text = [NSString stringWithFormat:@"%d", micState.position + 1];
|
self.postionLabel.text = [NSString stringWithFormat:@"%d", micState.position + 1];
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -195,10 +195,11 @@
|
|||||||
}
|
}
|
||||||
self.nickLabel.text = userInfo.nick.length > 0 ? userInfo.nick : @"";
|
self.nickLabel.text = userInfo.nick.length > 0 ? userInfo.nick : @"";
|
||||||
} else {
|
} else {
|
||||||
// self.avatarImageView.image = nil;
|
self.avatarImageView.image = nil;
|
||||||
[self.postionLabel setBackgroundColor:[ThemeColor positionNormalNickBackColor]];
|
[self.postionLabel setBackgroundColor:[ThemeColor positionNormalNickBackColor]];
|
||||||
}
|
}
|
||||||
if (userInfo.headWearUrl.length > 0) {
|
NSString * headWearUrl = userInfo.headwearEffect.length ? userInfo.headwearEffect : userInfo.headWearUrl.length ? userInfo.headWearUrl : userInfo.headwearPic;
|
||||||
|
if (headWearUrl.length > 0 && !userInfo.vipMic) {
|
||||||
self.headWearImageView.hidden = NO;
|
self.headWearImageView.hidden = NO;
|
||||||
NSURL *url = [NSURL URLWithString:userInfo.headWearUrl];
|
NSURL *url = [NSURL URLWithString:userInfo.headWearUrl];
|
||||||
@kWeakify(self);
|
@kWeakify(self);
|
||||||
@@ -210,6 +211,29 @@
|
|||||||
} else {
|
} else {
|
||||||
self.headWearImageView.hidden = YES;
|
self.headWearImageView.hidden = YES;
|
||||||
}
|
}
|
||||||
|
if (self.roomInfo.roomModeType == RoomModeType_Open_Blind) {
|
||||||
|
if (self.microModel && self.microModel.microState.position == 999) {///相亲模式VIP坑位不显示头饰(显示默认头饰)
|
||||||
|
self.headWearImageView.hidden = NO;
|
||||||
|
if (self.roomInfo.blindDateState == RoomPlayDateingType_Talk || self.roomInfo.blindDateState == RoomPlayDateingType_Finish) {
|
||||||
|
self.headWearImageView.image = [UIImage imageNamed:@"room_mode_dating_vip_title"];
|
||||||
|
} else {
|
||||||
|
if (userInfo) {
|
||||||
|
self.headWearImageView.image = [UIImage imageNamed:@"room_mode_dating_vip"];
|
||||||
|
} else {
|
||||||
|
self.headWearImageView.image = [UIImage imageNamed:@"room_mode_dating_vip_title"];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (userInfo && userInfo.vipMic) {
|
||||||
|
self.headWearImageView.hidden = NO;
|
||||||
|
if (self.roomInfo.blindDateState == RoomPlayDateingType_Talk || self.roomInfo.blindDateState == RoomPlayDateingType_Finish) {
|
||||||
|
self.headWearImageView.image = [UIImage imageNamed:@"room_mode_dating_vip_title"];
|
||||||
|
} else {
|
||||||
|
self.headWearImageView.image = [UIImage imageNamed:@"room_mode_dating_vip"];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)configGiftValue:(long long)giftValue {
|
- (void)configGiftValue:(long long)giftValue {
|
||||||
@@ -224,39 +248,31 @@
|
|||||||
self.giftValueView.giftValue = 0;
|
self.giftValueView.giftValue = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)configRoomUid:(NSString *)roomUid {
|
- (void)configRoomInfo:(RoomInfoModel *)roomInfo {
|
||||||
self.roomUid = roomUid;
|
self.roomInfo = roomInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)configDatingMode:(BOOL)isDating position:(int)position {
|
- (RoomInfoModel *)getRoomInfo {
|
||||||
if (isDating) {
|
return self.roomInfo;
|
||||||
NSString * typeImageName = @"";
|
|
||||||
if (position == 0 || position == 1 || position == 4 || position == 5) {
|
|
||||||
typeImageName = @"room_position_dating_male_bg";
|
|
||||||
} else if(position == 2 || position == 3 || position == 6 || position == 7){
|
|
||||||
typeImageName = @"room_position_dating_female_bg";
|
|
||||||
}
|
|
||||||
if (!self.datingTypeView.superview) {
|
|
||||||
[self insertSubview:self.datingTypeView aboveSubview:self.avatarImageView];
|
|
||||||
[self.datingTypeView mas_makeConstraints:^(MASConstraintMaker *make) {
|
|
||||||
make.edges.mas_equalTo(self.avatarImageView);
|
|
||||||
}];
|
|
||||||
}
|
|
||||||
self.datingTypeView.image = [UIImage imageNamed:typeImageName];
|
|
||||||
self.datingTypeView.hidden = NO;
|
|
||||||
} else {
|
|
||||||
self.datingTypeView.hidden = YES;
|
|
||||||
[self.datingTypeView removeFromSuperview];
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
- (void)configMicQueue:(NSMutableDictionary<NSString *,MicroQueueModel *> *)micQueue {
|
||||||
|
self.micQueue = micQueue;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
- (NSMutableDictionary<NSString *, MicroQueueModel *>*)getMicroQueue {
|
||||||
|
return self.micQueue;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
#pragma mark - Event Response
|
#pragma mark - Event Response
|
||||||
- (void)tapGiftValueRecognizer {
|
- (void)tapGiftValueRecognizer {
|
||||||
if (self.giftValueView.hidden) return;
|
if (self.giftValueView.hidden) return;
|
||||||
if (self.userInfo && self.userInfo.uid > 0) {
|
if (self.userInfo && self.userInfo.uid > 0) {
|
||||||
XPWebViewController * webVC = [[XPWebViewController alloc] init];
|
XPWebViewController * webVC = [[XPWebViewController alloc] init];
|
||||||
webVC.roomUid = self.roomUid;
|
webVC.roomUid = [NSString stringWithFormat:@"%ld", self.roomInfo.uid];
|
||||||
webVC.url = [NSString stringWithFormat:@"%@?uid=%ld", URLWithType(kRoomCharmRankURL), self.userInfo.uid];
|
webVC.url = [NSString stringWithFormat:@"%@?uid=%ld", URLWithType(kRoomCharmRankUrl), self.microModel.userInfo.uid];
|
||||||
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:webVC animated:YES];
|
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:webVC animated:YES];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -288,37 +304,37 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (UILabel *)nickLabel {
|
- (UILabel *)nickLabel {
|
||||||
if (!_nickLabel) {
|
if (!_nickLabel) {
|
||||||
_nickLabel = [[UILabel alloc] init];
|
_nickLabel = [[UILabel alloc] init];
|
||||||
_nickLabel.font = [UIFont systemFontOfSize:11];
|
_nickLabel.font = [UIFont systemFontOfSize:11];
|
||||||
_nickLabel.textColor = [ThemeColor positionNickColor];
|
_nickLabel.textColor = [ThemeColor positionNickColor];
|
||||||
_nickLabel.textAlignment = NSTextAlignmentCenter;
|
_nickLabel.textAlignment = NSTextAlignmentCenter;
|
||||||
}
|
}
|
||||||
return _nickLabel;
|
return _nickLabel;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (UIStackView *)stackView {
|
- (UIStackView *)stackView {
|
||||||
if (!_stackView) {
|
if (!_stackView) {
|
||||||
_stackView = [[UIStackView alloc] init];
|
_stackView = [[UIStackView alloc] init];
|
||||||
_stackView.axis = UILayoutConstraintAxisHorizontal;
|
_stackView.axis = UILayoutConstraintAxisHorizontal;
|
||||||
_stackView.distribution = UIStackViewDistributionFill;
|
_stackView.distribution = UIStackViewDistributionFill;
|
||||||
_stackView.alignment = UIStackViewAlignmentCenter;
|
_stackView.alignment = UIStackViewAlignmentCenter;
|
||||||
_stackView.spacing = 2;
|
_stackView.spacing = 2;
|
||||||
}
|
}
|
||||||
return _stackView;
|
return _stackView;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (UILabel *)postionLabel {
|
- (UILabel *)postionLabel {
|
||||||
if (!_postionLabel) {
|
if (!_postionLabel) {
|
||||||
_postionLabel = [[UILabel alloc] init];
|
_postionLabel = [[UILabel alloc] init];
|
||||||
_postionLabel.font = [UIFont systemFontOfSize:10];
|
_postionLabel.font = [UIFont systemFontOfSize:10];
|
||||||
_postionLabel.textAlignment = NSTextAlignmentCenter;
|
_postionLabel.textAlignment = NSTextAlignmentCenter;
|
||||||
_postionLabel.textColor = [UIColor colorWithWhite:1 alpha:0.6];
|
_postionLabel.textColor = [UIColor colorWithWhite:1 alpha:0.6];
|
||||||
_postionLabel.layer.masksToBounds = YES;
|
_postionLabel.layer.masksToBounds = YES;
|
||||||
_postionLabel.layer.cornerRadius = 7;
|
_postionLabel.layer.cornerRadius = 7;
|
||||||
[_postionLabel setBackgroundColor:[ThemeColor positionNormalNickBackColor]];
|
[_postionLabel setBackgroundColor:[ThemeColor positionNormalNickBackColor]];
|
||||||
}
|
}
|
||||||
return _postionLabel;
|
return _postionLabel;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (UILabel *)leaveLabel {
|
- (UILabel *)leaveLabel {
|
||||||
@@ -362,12 +378,5 @@
|
|||||||
return _headWearImageView;
|
return _headWearImageView;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (UIImageView *)datingTypeView {
|
|
||||||
if (!_datingTypeView) {
|
|
||||||
_datingTypeView = [[UIImageView alloc] init];
|
|
||||||
_datingTypeView.userInteractionEnabled = YES;
|
|
||||||
}
|
|
||||||
return _datingTypeView;
|
|
||||||
}
|
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
@@ -6,14 +6,27 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import <Foundation/Foundation.h>
|
#import <Foundation/Foundation.h>
|
||||||
|
#import "MicroQueueModel.h"
|
||||||
|
#import "MicroStateModel.h"
|
||||||
|
#import "UserInfoModel.h"
|
||||||
|
#import "RoomInfoModel.h"
|
||||||
NS_ASSUME_NONNULL_BEGIN
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
@class MicroQueueModel;
|
|
||||||
@class MicroStateModel;
|
|
||||||
@class UserInfoModel;
|
|
||||||
|
|
||||||
@protocol MicroViewProtocol <NSObject>
|
@protocol MicroViewProtocol <NSObject>
|
||||||
|
/**
|
||||||
|
初始化子view
|
||||||
|
*/
|
||||||
|
- (void)initSubViews;
|
||||||
|
|
||||||
|
/**
|
||||||
|
给子view 添加约束
|
||||||
|
*/
|
||||||
|
- (void)initSubViewConstraints;
|
||||||
|
|
||||||
|
/**
|
||||||
|
获取头像的view
|
||||||
|
*/
|
||||||
|
- (UIView *)getAvatarView;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 离开模式。
|
* 离开模式。
|
||||||
@@ -25,11 +38,6 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
*/
|
*/
|
||||||
- (void)configMicroView:(MicroQueueModel *)model;
|
- (void)configMicroView:(MicroQueueModel *)model;
|
||||||
|
|
||||||
/**
|
|
||||||
* 设置麦位信息。
|
|
||||||
*/
|
|
||||||
- (void)configMicroState:(MicroStateModel *)micState;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 设置用户信息。
|
* 设置用户信息。
|
||||||
*/
|
*/
|
||||||
@@ -54,16 +62,26 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
* 礼物值清零
|
* 礼物值清零
|
||||||
*/
|
*/
|
||||||
- (void)resetGiftValue;
|
- (void)resetGiftValue;
|
||||||
/**
|
|
||||||
* 房主的uid
|
|
||||||
*/
|
|
||||||
- (void)configRoomUid:(NSString *)roomUid;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 是否是相亲模式
|
* 设置房间信息房间的信息
|
||||||
*/
|
*/
|
||||||
- (void)configDatingMode:(BOOL)isDating position:(int)position;
|
- (void)configRoomInfo:(RoomInfoModel *)roomInfo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取当前房间的信息
|
||||||
|
*/
|
||||||
|
- (RoomInfoModel *)getRoomInfo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 设置当前房间的麦序
|
||||||
|
*/
|
||||||
|
- (void)configMicQueue:(NSMutableDictionary <NSString *, MicroQueueModel *> *)micQueue;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取当前的麦序
|
||||||
|
*/
|
||||||
|
- (NSMutableDictionary<NSString *, MicroQueueModel *>*)getMicroQueue;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
NS_ASSUME_NONNULL_END
|
NS_ASSUME_NONNULL_END
|
||||||
|
@@ -18,6 +18,10 @@ typedef NS_ENUM(NSInteger, MicroMicStateType) {
|
|||||||
MicroMicStateType_Close = 1,///锁麦
|
MicroMicStateType_Close = 1,///锁麦
|
||||||
};
|
};
|
||||||
|
|
||||||
|
typedef NS_ENUM(NSUInteger, DatingMicType) {
|
||||||
|
DatingMicType_Male = 1, //男神
|
||||||
|
DatingMicType_Female = 2, //女神
|
||||||
|
};
|
||||||
|
|
||||||
@interface MicroStateModel : NSObject
|
@interface MicroStateModel : NSObject
|
||||||
///坑位的序号
|
///坑位的序号
|
||||||
@@ -26,6 +30,8 @@ typedef NS_ENUM(NSInteger, MicroMicStateType) {
|
|||||||
@property (nonatomic, assign) MicroPosStateType posState;
|
@property (nonatomic, assign) MicroPosStateType posState;
|
||||||
///麦序的状态 闭麦/开麦
|
///麦序的状态 闭麦/开麦
|
||||||
@property (nonatomic, assign) MicroMicStateType micState;
|
@property (nonatomic, assign) MicroMicStateType micState;
|
||||||
|
///相亲房的 男神女神位置的 1 男 2 女
|
||||||
|
@property (nonatomic,assign) DatingMicType datingMicType;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
NS_ASSUME_NONNULL_END
|
NS_ASSUME_NONNULL_END
|
||||||
|
@@ -168,8 +168,9 @@
|
|||||||
MicroQueueModel * model = [self.micQueue objectForKey:[self indexToPosition:i]];
|
MicroQueueModel * model = [self.micQueue objectForKey:[self indexToPosition:i]];
|
||||||
|
|
||||||
UIView<MicroViewProtocol> * view = [self findMicroViewByIndex:i];
|
UIView<MicroViewProtocol> * view = [self findMicroViewByIndex:i];
|
||||||
|
[view configRoomInfo:roomInfo];
|
||||||
|
[view configMicQueue:self.micQueue];
|
||||||
[view configMicroView:model];
|
[view configMicroView:model];
|
||||||
[view configRoomUid:[NSString stringWithFormat:@"%ld", roomInfo.uid]];
|
|
||||||
[view showLeaveMode:i == 0 && leaveMode];
|
[view showLeaveMode:i == 0 && leaveMode];
|
||||||
if (roomInfo.leaveMode) {
|
if (roomInfo.leaveMode) {
|
||||||
if (i == 0) {
|
if (i == 0) {
|
||||||
@@ -182,7 +183,6 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
[view showGiftValueMode:roomInfo.showGiftValue];
|
[view showGiftValueMode:roomInfo.showGiftValue];
|
||||||
[view configDatingMode:roomInfo.roomModeType == RoomModeType_Open_Blind position:model.microState.position];
|
|
||||||
if (self.hostDelegate.getUserInfo.uid && model.userInfo.uid == self.hostDelegate.getUserInfo.uid) {
|
if (self.hostDelegate.getUserInfo.uid && model.userInfo.uid == self.hostDelegate.getUserInfo.uid) {
|
||||||
selfNeedBroadcast = model.microState.micState == MicroMicStateType_Open;
|
selfNeedBroadcast = model.microState.micState == MicroMicStateType_Open;
|
||||||
}
|
}
|
||||||
|
@@ -77,7 +77,7 @@ UIKIT_EXTERN NSString * const kRoomMiniNotificationKey;
|
|||||||
@property (nonatomic,strong) UserInfoModel *userInfo;
|
@property (nonatomic,strong) UserInfoModel *userInfo;
|
||||||
///房间信息
|
///房间信息
|
||||||
@property (nonatomic,strong) RoomInfoModel *roomInfo;
|
@property (nonatomic,strong) RoomInfoModel *roomInfo;
|
||||||
///本地是否修改过礼物特效显示
|
///本地是否修改过礼物特效显示 当前房间如果设置过礼物特效是否显示的话 就不再跟随房间礼物特效的更新而更新
|
||||||
@property (nonatomic,assign) BOOL hasAnimationEffect;
|
@property (nonatomic,assign) BOOL hasAnimationEffect;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@@ -130,12 +130,14 @@ UIKIT_EXTERN NSString * const kRoomMiniNotificationKey;
|
|||||||
- (void)initSubViews {
|
- (void)initSubViews {
|
||||||
[self.view addSubview:self.backContainerView];
|
[self.view addSubview:self.backContainerView];
|
||||||
[self.view addSubview:self.roomHeaderView];
|
[self.view addSubview:self.roomHeaderView];
|
||||||
|
self.stageView = self.socialView;
|
||||||
[self.view addSubview:self.stageView];
|
[self.view addSubview:self.stageView];
|
||||||
[self.view addSubview:self.messageContainerView];
|
[self.view addSubview:self.messageContainerView];
|
||||||
[self.view addSubview:self.menuContainerView];
|
[self.view addSubview:self.menuContainerView];
|
||||||
[self.view addSubview:self.activityContainerView];
|
[self.view addSubview:self.activityContainerView];
|
||||||
[self.view addSubview:self.functionView];
|
[self.view addSubview:self.functionView];
|
||||||
[self.view addSubview:self.animationView];
|
[self.view addSubview:self.animationView];
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)initSubViewConstraints {
|
- (void)initSubViewConstraints {
|
||||||
@@ -151,6 +153,7 @@ UIKIT_EXTERN NSString * const kRoomMiniNotificationKey;
|
|||||||
[self.stageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
[self.stageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.left.right.mas_equalTo(self.view);
|
make.left.right.mas_equalTo(self.view);
|
||||||
make.top.mas_equalTo(self.roomHeaderView.mas_bottom);
|
make.top.mas_equalTo(self.roomHeaderView.mas_bottom);
|
||||||
|
make.height.mas_equalTo(self.stageView.hightForStageView);
|
||||||
}];
|
}];
|
||||||
|
|
||||||
[self.messageContainerView mas_makeConstraints:^(MASConstraintMaker *make) {
|
[self.messageContainerView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
@@ -381,11 +384,11 @@ UIKIT_EXTERN NSString * const kRoomMiniNotificationKey;
|
|||||||
case 1:
|
case 1:
|
||||||
case 3:
|
case 3:
|
||||||
{
|
{
|
||||||
RoomInfoModel * roomInfo =[RoomInfoModel modelWithJSON:data[@"roomInfo"]];
|
NSMutableDictionary *lastRoomInfoDic = [NSMutableDictionary dictionaryWithDictionary:[self.roomInfo model2dictionary]];
|
||||||
roomInfo.hasAnimationEffect = self.hasAnimationEffect;
|
[lastRoomInfoDic addEntriesFromDictionary: ((NSString *)data[@"roomInfo"]).toJSONObject];
|
||||||
self.roomInfo.leaveMode = roomInfo.leaveMode;
|
RoomInfoModel * lastRoomInfo = [RoomInfoModel modelWithJSON:lastRoomInfoDic];
|
||||||
self.roomInfo.showGiftValue = roomInfo.showGiftValue;
|
lastRoomInfo.hasAnimationEffect = self.hasAnimationEffect;
|
||||||
self.roomInfo.roomModeType = roomInfo.roomModeType;
|
self.roomInfo= lastRoomInfo;
|
||||||
[self changeStageViewOnRoomUpdate];
|
[self changeStageViewOnRoomUpdate];
|
||||||
[self.stageView onRoomUpdate];
|
[self.stageView onRoomUpdate];
|
||||||
[self.menuContainerView onRoomUpdate];
|
[self.menuContainerView onRoomUpdate];
|
||||||
@@ -577,13 +580,6 @@ UIKIT_EXTERN NSString * const kRoomMiniNotificationKey;
|
|||||||
return _socialView;
|
return _socialView;
|
||||||
}
|
}
|
||||||
|
|
||||||
- (StageView *)stageView {
|
|
||||||
if (!_stageView) {
|
|
||||||
_stageView = [[StageView alloc] initWithDelegate:self];
|
|
||||||
}
|
|
||||||
return _stageView;
|
|
||||||
}
|
|
||||||
|
|
||||||
- (DatingStageView *)datingView {
|
- (DatingStageView *)datingView {
|
||||||
if (!_datingView) {
|
if (!_datingView) {
|
||||||
_datingView = [[DatingStageView alloc] initWithDelegate:self];
|
_datingView = [[DatingStageView alloc] initWithDelegate:self];
|
||||||
|
Reference in New Issue
Block a user