我的装扮

This commit is contained in:
fengshuo
2021-12-15 20:29:27 +08:00
parent aba903f5a4
commit 3f0bbf01c9
16 changed files with 1028 additions and 0 deletions

View File

@@ -169,6 +169,13 @@
E833ED0D274FAD1C00A2463B /* XPKickUserModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E833ED0C274FAD1C00A2463B /* XPKickUserModel.m */; }; E833ED0D274FAD1C00A2463B /* XPKickUserModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E833ED0C274FAD1C00A2463B /* XPKickUserModel.m */; };
E838D9A0275E1BF60079E0B5 /* XPRoomAnimationView.m in Sources */ = {isa = PBXBuildFile; fileRef = E838D99F275E1BF60079E0B5 /* XPRoomAnimationView.m */; }; E838D9A0275E1BF60079E0B5 /* XPRoomAnimationView.m in Sources */ = {isa = PBXBuildFile; fileRef = E838D99F275E1BF60079E0B5 /* XPRoomAnimationView.m */; };
E83953222769F33B00CF2F24 /* XPRoomFunctionContainerView.m in Sources */ = {isa = PBXBuildFile; fileRef = E83953212769F33B00CF2F24 /* XPRoomFunctionContainerView.m */; }; E83953222769F33B00CF2F24 /* XPRoomFunctionContainerView.m in Sources */ = {isa = PBXBuildFile; fileRef = E83953212769F33B00CF2F24 /* XPRoomFunctionContainerView.m */; };
E839532A276A002800CF2F24 /* XPMineDressUpViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8395329276A002800CF2F24 /* XPMineDressUpViewController.m */; };
E839532D276A030F00CF2F24 /* XPMineDressUpListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E839532C276A030F00CF2F24 /* XPMineDressUpListViewController.m */; };
E8395331276A03AE00CF2F24 /* Api+DressUp.m in Sources */ = {isa = PBXBuildFile; fileRef = E8395330276A03AE00CF2F24 /* Api+DressUp.m */; };
E8395334276A03C300CF2F24 /* XPMineDressUpPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8395333276A03C300CF2F24 /* XPMineDressUpPresenter.m */; };
E8395339276A0CC100CF2F24 /* XPMineHeadwearTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8395338276A0CC100CF2F24 /* XPMineHeadwearTableViewCell.m */; };
E839533C276A0CCD00CF2F24 /* XPMineCarTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E839533B276A0CCD00CF2F24 /* XPMineCarTableViewCell.m */; };
E839533F276A0CDB00CF2F24 /* XPMineNameplateTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E839533E276A0CDB00CF2F24 /* XPMineNameplateTableViewCell.m */; };
E83DB47A27462C4500D8CBD1 /* XPGiftBigPrizeModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E83DB47927462C4500D8CBD1 /* XPGiftBigPrizeModel.m */; }; E83DB47A27462C4500D8CBD1 /* XPGiftBigPrizeModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E83DB47927462C4500D8CBD1 /* XPGiftBigPrizeModel.m */; };
E83DB47D2746372300D8CBD1 /* XPRoomGiftBannerView.m in Sources */ = {isa = PBXBuildFile; fileRef = E83DB47C2746372300D8CBD1 /* XPRoomGiftBannerView.m */; }; E83DB47D2746372300D8CBD1 /* XPRoomGiftBannerView.m in Sources */ = {isa = PBXBuildFile; fileRef = E83DB47C2746372300D8CBD1 /* XPRoomGiftBannerView.m */; };
E83DB481274649FB00D8CBD1 /* XPGiftBannerUserInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E83DB480274649FB00D8CBD1 /* XPGiftBannerUserInfoModel.m */; }; E83DB481274649FB00D8CBD1 /* XPGiftBannerUserInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E83DB480274649FB00D8CBD1 /* XPGiftBannerUserInfoModel.m */; };
@@ -665,6 +672,21 @@
E838D99F275E1BF60079E0B5 /* XPRoomAnimationView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomAnimationView.m; sourceTree = "<group>"; }; E838D99F275E1BF60079E0B5 /* XPRoomAnimationView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomAnimationView.m; sourceTree = "<group>"; };
E83953202769F33B00CF2F24 /* XPRoomFunctionContainerView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomFunctionContainerView.h; sourceTree = "<group>"; }; E83953202769F33B00CF2F24 /* XPRoomFunctionContainerView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomFunctionContainerView.h; sourceTree = "<group>"; };
E83953212769F33B00CF2F24 /* XPRoomFunctionContainerView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomFunctionContainerView.m; sourceTree = "<group>"; }; E83953212769F33B00CF2F24 /* XPRoomFunctionContainerView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomFunctionContainerView.m; sourceTree = "<group>"; };
E8395328276A002800CF2F24 /* XPMineDressUpViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineDressUpViewController.h; sourceTree = "<group>"; };
E8395329276A002800CF2F24 /* XPMineDressUpViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineDressUpViewController.m; sourceTree = "<group>"; };
E839532B276A030F00CF2F24 /* XPMineDressUpListViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineDressUpListViewController.h; sourceTree = "<group>"; };
E839532C276A030F00CF2F24 /* XPMineDressUpListViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineDressUpListViewController.m; sourceTree = "<group>"; };
E839532F276A03AE00CF2F24 /* Api+DressUp.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Api+DressUp.h"; sourceTree = "<group>"; };
E8395330276A03AE00CF2F24 /* Api+DressUp.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "Api+DressUp.m"; sourceTree = "<group>"; };
E8395332276A03C300CF2F24 /* XPMineDressUpPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineDressUpPresenter.h; sourceTree = "<group>"; };
E8395333276A03C300CF2F24 /* XPMineDressUpPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineDressUpPresenter.m; sourceTree = "<group>"; };
E8395335276A03E200CF2F24 /* XPMineDressUpProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineDressUpProtocol.h; sourceTree = "<group>"; };
E8395337276A0CC100CF2F24 /* XPMineHeadwearTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineHeadwearTableViewCell.h; sourceTree = "<group>"; };
E8395338276A0CC100CF2F24 /* XPMineHeadwearTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineHeadwearTableViewCell.m; sourceTree = "<group>"; };
E839533A276A0CCD00CF2F24 /* XPMineCarTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineCarTableViewCell.h; sourceTree = "<group>"; };
E839533B276A0CCD00CF2F24 /* XPMineCarTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineCarTableViewCell.m; sourceTree = "<group>"; };
E839533D276A0CDB00CF2F24 /* XPMineNameplateTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineNameplateTableViewCell.h; sourceTree = "<group>"; };
E839533E276A0CDB00CF2F24 /* XPMineNameplateTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineNameplateTableViewCell.m; sourceTree = "<group>"; };
E83DB47827462C4500D8CBD1 /* XPGiftBigPrizeModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPGiftBigPrizeModel.h; sourceTree = "<group>"; }; E83DB47827462C4500D8CBD1 /* XPGiftBigPrizeModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPGiftBigPrizeModel.h; sourceTree = "<group>"; };
E83DB47927462C4500D8CBD1 /* XPGiftBigPrizeModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPGiftBigPrizeModel.m; sourceTree = "<group>"; }; E83DB47927462C4500D8CBD1 /* XPGiftBigPrizeModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPGiftBigPrizeModel.m; sourceTree = "<group>"; };
E83DB47B2746372300D8CBD1 /* XPRoomGiftBannerView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomGiftBannerView.h; sourceTree = "<group>"; }; E83DB47B2746372300D8CBD1 /* XPRoomGiftBannerView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomGiftBannerView.h; sourceTree = "<group>"; };
@@ -1892,6 +1914,76 @@
path = AnimationView; path = AnimationView;
sourceTree = "<group>"; sourceTree = "<group>";
}; };
E83953232769FF2400CF2F24 /* DressUp */ = {
isa = PBXGroup;
children = (
E83953272769FFF100CF2F24 /* Model */,
E839532E276A038500CF2F24 /* Api */,
E83953242769FFD000CF2F24 /* View */,
E83953262769FFE200CF2F24 /* Presenter */,
E83953252769FFD900CF2F24 /* Protocol */,
);
path = DressUp;
sourceTree = "<group>";
};
E83953242769FFD000CF2F24 /* View */ = {
isa = PBXGroup;
children = (
E8395336276A0C9400CF2F24 /* Cell */,
E8395328276A002800CF2F24 /* XPMineDressUpViewController.h */,
E8395329276A002800CF2F24 /* XPMineDressUpViewController.m */,
E839532B276A030F00CF2F24 /* XPMineDressUpListViewController.h */,
E839532C276A030F00CF2F24 /* XPMineDressUpListViewController.m */,
);
path = View;
sourceTree = "<group>";
};
E83953252769FFD900CF2F24 /* Protocol */ = {
isa = PBXGroup;
children = (
E8395335276A03E200CF2F24 /* XPMineDressUpProtocol.h */,
);
path = Protocol;
sourceTree = "<group>";
};
E83953262769FFE200CF2F24 /* Presenter */ = {
isa = PBXGroup;
children = (
E8395332276A03C300CF2F24 /* XPMineDressUpPresenter.h */,
E8395333276A03C300CF2F24 /* XPMineDressUpPresenter.m */,
);
path = Presenter;
sourceTree = "<group>";
};
E83953272769FFF100CF2F24 /* Model */ = {
isa = PBXGroup;
children = (
);
path = Model;
sourceTree = "<group>";
};
E839532E276A038500CF2F24 /* Api */ = {
isa = PBXGroup;
children = (
E839532F276A03AE00CF2F24 /* Api+DressUp.h */,
E8395330276A03AE00CF2F24 /* Api+DressUp.m */,
);
path = Api;
sourceTree = "<group>";
};
E8395336276A0C9400CF2F24 /* Cell */ = {
isa = PBXGroup;
children = (
E8395337276A0CC100CF2F24 /* XPMineHeadwearTableViewCell.h */,
E8395338276A0CC100CF2F24 /* XPMineHeadwearTableViewCell.m */,
E839533A276A0CCD00CF2F24 /* XPMineCarTableViewCell.h */,
E839533B276A0CCD00CF2F24 /* XPMineCarTableViewCell.m */,
E839533D276A0CDB00CF2F24 /* XPMineNameplateTableViewCell.h */,
E839533E276A0CDB00CF2F24 /* XPMineNameplateTableViewCell.m */,
);
path = Cell;
sourceTree = "<group>";
};
E83DB47E274649B200D8CBD1 /* Model */ = { E83DB47E274649B200D8CBD1 /* Model */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
@@ -2689,6 +2781,7 @@
E8E70D7126F2EB4900F03460 /* View */ = { E8E70D7126F2EB4900F03460 /* View */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
E83953232769FF2400CF2F24 /* DressUp */,
E8E70D8026F2F3C500F03460 /* Cell */, E8E70D8026F2F3C500F03460 /* Cell */,
E8E70D7F26F2F39000F03460 /* SubViews */, E8E70D7F26F2F39000F03460 /* SubViews */,
E8E70D7526F2F15100F03460 /* XPMineViewController.h */, E8E70D7526F2F15100F03460 /* XPMineViewController.h */,
@@ -2986,6 +3079,7 @@
files = ( files = (
181D7F1B2726CE2A00B7C059 /* StageView.m in Sources */, 181D7F1B2726CE2A00B7C059 /* StageView.m in Sources */,
18EE3FF12750D2AD00A452BF /* NIMTimeUtils.m in Sources */, 18EE3FF12750D2AD00A452BF /* NIMTimeUtils.m in Sources */,
E839532D276A030F00CF2F24 /* XPMineDressUpListViewController.m in Sources */,
E8B846D826FDE17300A777FE /* XPMineRechargeProtocol.h in Sources */, E8B846D826FDE17300A777FE /* XPMineRechargeProtocol.h in Sources */,
E8B846C726FDB45000A777FE /* XPMineUserInfoAlbumProtocol.h in Sources */, E8B846C726FDB45000A777FE /* XPMineUserInfoAlbumProtocol.h in Sources */,
E8DEC992276441AA0078CB70 /* XPCandyTreeAnimationModel.m in Sources */, E8DEC992276441AA0078CB70 /* XPCandyTreeAnimationModel.m in Sources */,
@@ -3121,6 +3215,7 @@
E816C11527608A7500C84014 /* XPRoomMiniManager.m in Sources */, E816C11527608A7500C84014 /* XPRoomMiniManager.m in Sources */,
E8EEB91726FC7B35007C6EBA /* XPMineUserInfoDesViewController.m in Sources */, E8EEB91726FC7B35007C6EBA /* XPMineUserInfoDesViewController.m in Sources */,
180806FB2729A354001FD836 /* ThemeColor+Room.m in Sources */, 180806FB2729A354001FD836 /* ThemeColor+Room.m in Sources */,
E8395331276A03AE00CF2F24 /* Api+DressUp.m in Sources */,
E8DEC99E2764A5B60078CB70 /* XPRoomMoreMenuViewController.m in Sources */, E8DEC99E2764A5B60078CB70 /* XPRoomMoreMenuViewController.m in Sources */,
E82325F2274E2DE6003A3332 /* XPUserCardViewController.m in Sources */, E82325F2274E2DE6003A3332 /* XPUserCardViewController.m in Sources */,
E8E70D8626F2F55C00F03460 /* XPMineAccountView.m in Sources */, E8E70D8626F2F55C00F03460 /* XPMineAccountView.m in Sources */,
@@ -3191,7 +3286,9 @@
189DD56526DE465A00AB55B1 /* LoginViewController.m in Sources */, 189DD56526DE465A00AB55B1 /* LoginViewController.m in Sources */,
E824544B26F5BBB800BE8163 /* XPMineModifPayPwdViewController.m in Sources */, E824544B26F5BBB800BE8163 /* XPMineModifPayPwdViewController.m in Sources */,
E8A1E4512762082A00B294CA /* Api+CandyTree.m in Sources */, E8A1E4512762082A00B294CA /* Api+CandyTree.m in Sources */,
E839533C276A0CCD00CF2F24 /* XPMineCarTableViewCell.m in Sources */,
E8EEB8FE26FC2DF8007C6EBA /* XPMineUserInfoCustomNavView.m in Sources */, E8EEB8FE26FC2DF8007C6EBA /* XPMineUserInfoCustomNavView.m in Sources */,
E839532A276A002800CF2F24 /* XPMineDressUpViewController.m in Sources */,
E88B5CAD26FB16A800DA9178 /* XPMineTeenagerDesView.m in Sources */, E88B5CAD26FB16A800DA9178 /* XPMineTeenagerDesView.m in Sources */,
E8C6FFDA2754BE81004DC9F0 /* ThemeColor+Home.m in Sources */, E8C6FFDA2754BE81004DC9F0 /* ThemeColor+Home.m in Sources */,
E824545126F5CE6E00BE8163 /* XPMineModifPayPwdPresenter.m in Sources */, E824545126F5CE6E00BE8163 /* XPMineModifPayPwdPresenter.m in Sources */,
@@ -3232,6 +3329,7 @@
18EE3FEE2750CE6D00A452BF /* NIMMessageUtils.m in Sources */, 18EE3FEE2750CE6D00A452BF /* NIMMessageUtils.m in Sources */,
E8DEC9AC2764A6CD0078CB70 /* XPRoomMoreMenuCollectionViewCell.m in Sources */, E8DEC9AC2764A6CD0078CB70 /* XPRoomMoreMenuCollectionViewCell.m in Sources */,
9B7D804A2753783D003DAC0C /* SessionViewController.m in Sources */, 9B7D804A2753783D003DAC0C /* SessionViewController.m in Sources */,
E839533F276A0CDB00CF2F24 /* XPMineNameplateTableViewCell.m in Sources */,
E8B846BC26FD7C1200A777FE /* UploadImage.m in Sources */, E8B846BC26FD7C1200A777FE /* UploadImage.m in Sources */,
186A534D26FC6ED900D67B2C /* TTActionSheetView.m in Sources */, 186A534D26FC6ED900D67B2C /* TTActionSheetView.m in Sources */,
E83DB481274649FB00D8CBD1 /* XPGiftBannerUserInfoModel.m in Sources */, E83DB481274649FB00D8CBD1 /* XPGiftBannerUserInfoModel.m in Sources */,
@@ -3262,9 +3360,12 @@
E89D60BA271D643A001F8895 /* Api+Room.m in Sources */, E89D60BA271D643A001F8895 /* Api+Room.m in Sources */,
E872308926E89BE000B90D4F /* LoginPhoneViewController.m in Sources */, E872308926E89BE000B90D4F /* LoginPhoneViewController.m in Sources */,
E8C6FFEA2755040B004DC9F0 /* XPHomeSearchNavView.m in Sources */, E8C6FFEA2755040B004DC9F0 /* XPHomeSearchNavView.m in Sources */,
E8395339276A0CC100CF2F24 /* XPMineHeadwearTableViewCell.m in Sources */,
18E7B29026EA0E6B0064BC9B /* FlutterBoost+Xplan.m in Sources */, 18E7B29026EA0E6B0064BC9B /* FlutterBoost+Xplan.m in Sources */,
E8B846DC26FDE24300A777FE /* RechargeListModel.m in Sources */, E8B846DC26FDE24300A777FE /* RechargeListModel.m in Sources */,
E884C36C2743951B00E1EBED /* GiftReceiveInfoModel.m in Sources */, E884C36C2743951B00E1EBED /* GiftReceiveInfoModel.m in Sources */,
E839531E2769CCCE00CF2F24 /* RoomRankModel.m in Sources */,
E8395334276A03C300CF2F24 /* XPMineDressUpPresenter.m in Sources */,
189DD75926E6003C00AB55B1 /* Api.m in Sources */, 189DD75926E6003C00AB55B1 /* Api.m in Sources */,
E8133916273E532D00708B66 /* XPGiftItemCollectionViewCell.m in Sources */, E8133916273E532D00708B66 /* XPGiftItemCollectionViewCell.m in Sources */,
E833ED0D274FAD1C00A2463B /* XPKickUserModel.m in Sources */, E833ED0D274FAD1C00A2463B /* XPKickUserModel.m in Sources */,

View File

@@ -0,0 +1,58 @@
//
// Api+DressUp.h
// xplan-ios
//
// Created by 冯硕 on 2021/12/15.
//
#import "Api.h"
NS_ASSUME_NONNULL_BEGIN
@interface Api (DressUp)
/// 获取头饰列表
/// @param completion 完成
/// @param ticket ticket
/// @param uid uid
+ (void)headwearList:(HttpRequestHelperCompletion)completion ticket:(NSString *)ticket uid:(NSString *)uid;
/// 获取座驾列表
/// @param completion 完成
/// @param ticket ticket
/// @param uid uid
+ (void)carList:(HttpRequestHelperCompletion)completion ticket:(NSString *)ticket uid:(NSString *)uid;
/// 获取铭牌列表
/// @param completion 完成
/// @param ticket ticket
/// @param uid uid
+ (void)nameplatList:(HttpRequestHelperCompletion)completion ticket:(NSString *)ticket uid:(NSString *)uid page:(NSString *)page pageSize:(NSString *)pageSize;
/// 使用头饰
/// @param completion 完成
/// @param headwearId 头饰id 0 取消使用头饰
/// @param ticket ticket
/// @param uid uid
+ (void)useHeadWear:(HttpRequestHelperCompletion)completion headwearId:(NSString *)headwearId ticket:(NSString *)ticket uid:(NSString *)uid;
/// 使用座驾
/// @param completion 完成
/// @param carId 座驾id 0 取消使用座驾
/// @param ticket ticket
/// @param uid uid
+ (void)useCar:(HttpRequestHelperCompletion)completion carId:(NSString *)carId ticket:(NSString *)ticket uid:(NSString *)uid;
/// 使用座驾
/// @param completion 完成
/// @param userNameplateId 座驾id 0 取消使用座驾
/// @param ticket ticket
/// @param uid uid
+ (void)useNamePlate:(HttpRequestHelperCompletion)completion userNameplateId:(NSString *)userNameplateId ticket:(NSString *)ticket uid:(NSString *)uid;
/// 活动
/// @param completion 完成
/// @param type 类型 2 房间的 1 首页的 3 我的装扮
+ (void)dressupBannerList:(HttpRequestHelperCompletion)completion type:(NSString *)type;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,70 @@
//
// Api+DressUp.m
// xplan-ios
//
// Created by on 2021/12/15.
//
#import "Api+DressUp.h"
@implementation Api (DressUp)
///
/// @param completion
/// @param ticket ticket
/// @param uid uid
+ (void)headwearList:(HttpRequestHelperCompletion)completion ticket:(NSString *)ticket uid:(NSString *)uid {
[self makeRequest:@"headwear/v2/user/list" method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, ticket, uid, nil];
}
///
/// @param completion
/// @param ticket ticket
/// @param uid uid
+ (void)carList:(HttpRequestHelperCompletion)completion ticket:(NSString *)ticket uid:(NSString *)uid {
[self makeRequest:@"car/carport/v2/list" method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, ticket, uid, nil];
}
///
/// @param completion
/// @param ticket ticket
/// @param uid uid
+ (void)nameplatList:(HttpRequestHelperCompletion)completion ticket:(NSString *)ticket uid:(NSString *)uid page:(NSString *)page pageSize:(NSString *)pageSize {
[self makeRequest:@"nameplate/userNameplateList" method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, ticket, uid, page, pageSize, nil];
}
/// 使
/// @param completion
/// @param headwearId id 0 使
/// @param ticket ticket
/// @param uid uid
+ (void)useHeadWear:(HttpRequestHelperCompletion)completion headwearId:(NSString *)headwearId ticket:(NSString *)ticket uid:(NSString *)uid {
[self makeRequest:@"v1/user/headwear/use" method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, headwearId, ticket, uid, nil];
}
/// 使
/// @param completion
/// @param carId id 0 使
/// @param ticket ticket
/// @param uid uid
+ (void)useCar:(HttpRequestHelperCompletion)completion carId:(NSString *)carId ticket:(NSString *)ticket uid:(NSString *)uid {
[self makeRequest:@"car/carport/use" method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, carId, ticket, uid, nil];
}
/// 使
/// @param completion
/// @param userNameplateId id 0 使
/// @param ticket ticket
/// @param uid uid
+ (void)useNamePlate:(HttpRequestHelperCompletion)completion userNameplateId:(NSString *)userNameplateId ticket:(NSString *)ticket uid:(NSString *)uid {
[self makeRequest:@"nameplate/useNameplate" method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, userNameplateId, ticket, uid, nil];
}
///
/// @param completion
/// @param type 2 1 3
+ (void)dressupBannerList:(HttpRequestHelperCompletion)completion type:(NSString *)type {
[self makeRequest:@"home/banner" method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, type, nil];
}
@end

View File

@@ -0,0 +1,16 @@
//
// DressUpPresenter.h
// xplan-ios
//
// Created by 冯硕 on 2021/12/15.
//
#import "BaseMvpPresenter.h"
NS_ASSUME_NONNULL_BEGIN
@interface XPMineDressUpPresenter : BaseMvpPresenter
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,12 @@
//
// DressUpPresenter.m
// xplan-ios
//
// Created by on 2021/12/15.
//
#import "XPMineDressUpPresenter.h"
@implementation XPMineDressUpPresenter
@end

View File

@@ -0,0 +1,16 @@
//
// XPMineDressUpProtocol.h
// xplan-ios
//
// Created by 冯硕 on 2021/12/15.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@protocol XPMineDressUpProtocol <NSObject>
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,16 @@
//
// XPMineCarTableViewCell.h
// xplan-ios
//
// Created by 冯硕 on 2021/12/15.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@interface XPMineCarTableViewCell : UITableViewCell
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,23 @@
//
// XPMineCarTableViewCell.m
// xplan-ios
//
// Created by on 2021/12/15.
//
#import "XPMineCarTableViewCell.h"
@implementation XPMineCarTableViewCell
- (void)awakeFromNib {
[super awakeFromNib];
// Initialization code
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
@end

View File

@@ -0,0 +1,16 @@
//
// XPMineHeadwearTableViewCell.h
// xplan-ios
//
// Created by 冯硕 on 2021/12/15.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@interface XPMineHeadwearTableViewCell : UITableViewCell
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,198 @@
//
// XPMineHeadwearTableViewCell.m
// xplan-ios
//
// Created by on 2021/12/15.
//
#import "XPMineHeadwearTableViewCell.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "ThemeColor.h"
#import "NetImageView.h"
#import "UIImage+Utils.h"
@interface XPMineHeadwearTableViewCell ()
///
@property (nonatomic, strong) UIImageView *giveImageView;
///
@property (nonatomic, strong) UIView *backView;
///
@property (nonatomic, strong) NetImageView *namePlateImageView;
///
@property (nonatomic, strong) UILabel *titleLabel;
///icon
@property (nonatomic, strong) UIImageView *timeImageView;
///
@property (nonatomic, strong) UILabel *timeLabel;
///使
@property (nonatomic,strong) UIButton *useButton;
///线
@property (nonatomic,strong) UIView * lineView;
@end
@implementation XPMineHeadwearTableViewCell
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {
self.selectionStyle = UITableViewCellSelectionStyleNone;
[self initSubViews];
[self initSubViewConstraints];
}
return self;
}
#pragma mark - Private Method
- (void)initSubViews {
self.backgroundColor = [UIColor clearColor];;
[self.contentView addSubview:self.backView];
[self.contentView addSubview:self.titleLabel];
[self.contentView addSubview:self.timeImageView];
[self.contentView addSubview:self.timeLabel];
[self.contentView addSubview:self.useButton];
[self.contentView addSubview:self.lineView];
[self.backView addSubview:self.namePlateImageView];
}
- (void)initSubViewConstraints {
[self.backView mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.width.mas_equalTo(80);
make.centerY.mas_equalTo(self.contentView);
make.left.mas_equalTo(self.contentView).offset(20);
}];
[self.namePlateImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.mas_equalTo(self.backView);
}];
[self.titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.backView.mas_right).offset(10);
make.top.mas_equalTo(self.backView).offset(10);
}];
[self.timeImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.titleLabel);
make.height.width.mas_equalTo(11);
make.top.mas_equalTo(self.titleLabel.mas_bottom).inset(11);
}];
[self.timeLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.timeImageView.mas_right).offset(2);
make.centerY.mas_equalTo(self.timeImageView);
}];
[self.useButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerY.mas_equalTo(self);
make.right.mas_equalTo(self.contentView).offset(-15);
make.height.mas_equalTo(33);
make.width.mas_equalTo(85);
}];
[self.lineView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.contentView).offset(105);
make.height.mas_equalTo(0.5);
make.bottom.mas_equalTo(self.contentView);
make.right.mas_equalTo(self.contentView).offset(-15);
}];
}
#pragma mark - private
//- (void)pricenamePlate:(UserNamePlateList *)namePlate{
//
// self.namePlate = namePlate;
//
// [self.namePlateIcon qn_setImageImageWithUrl:namePlate.nameplateImage placeholderImage:@"dress_headwear_placehoder" type:ImageTypeRoomFace];
//
// BOOL isUse = namePlate.isUsing;
// NSString *expireDays = [NSString stringWithFormat:@"%ld", namePlate.expireDays];
//
// self.dressUpNameLabel.text = namePlate.nameplateName;
// self.giveIcon.hidden = YES;
//
// //
// BOOL isExpired = namePlate.isExpired;
//
// self.useBtn.hidden = isExpired || isUse;//|使 使
// self.cancelUseBtn.hidden = isExpired || !isUse;//|使 使
//
// self.timeLabel.text = isExpired ? @"已过期" : [NSString stringWithFormat:@"剩余%@天", expireDays];
//
//}
#pragma mark - Event Response
- (void)useButtonAction:(UIButton *)sender {
}
#pragma mark - Getter && Setter
- (UIView *)backView {
if (!_backView) {
_backView = [[UIView alloc] init];
_backView.backgroundColor = [ThemeColor appCellBackgroundColor];
_backView.layer.masksToBounds = YES;
_backView.layer.cornerRadius = 10;
}
return _backView;
}
- (NetImageView *)namePlateImageView {
if (!_namePlateImageView) {
_namePlateImageView = [[NetImageView alloc] init];
_namePlateImageView.image = [UIImageConstant defaultAvatarPlaceholder];
}
return _namePlateImageView;;
}
- (UILabel *)titleLabel {
if (!_titleLabel) {
_titleLabel = [[UILabel alloc] init];
_titleLabel.font = [UIFont systemFontOfSize:15];
_titleLabel.textColor = [ThemeColor mainTextColor];
}
return _titleLabel;
}
- (UIButton *)useButton {
if (!_useButton) {
_useButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_useButton setTitle:@"使用" forState:UIControlStateNormal];
[_useButton setTitleColor:[ThemeColor confirmButtonTextColor] forState:UIControlStateNormal];
[_useButton addTarget:self action:@selector(useButtonAction:) forControlEvents:UIControlEventTouchUpInside];
_useButton.layer.masksToBounds = YES;
_useButton.layer.cornerRadius = 33/2;
_useButton.titleLabel.font = [UIFont systemFontOfSize:14];
[_useButton setBackgroundImage:[UIImage gradientColorImageFromColors:@[[ThemeColor confirmButtonGradientStartColor], [ThemeColor confirmButtonGradientEndColor]] gradientType:GradientTypeLeftToRight imgSize:CGSizeMake(10, 10)] forState:UIControlStateNormal];
}
return _useButton;
}
- (UIImageView *)timeImageView {
if (!_timeImageView) {
_timeImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"person_Dressup_time"]];
}
return _timeImageView;
}
- (UILabel *)timeLabel {
if (!_timeLabel) {
_timeLabel = [[UILabel alloc] init];
_timeLabel.font = [UIFont systemFontOfSize:12];
_timeLabel.textColor = [ThemeColor secondTextColor];
}
return _timeLabel;
}
- (UIView *)lineView {
if (!_lineView) {
_lineView = [[UIView alloc] init];
_lineView.backgroundColor = [ThemeColor dividerColor];
}
return _lineView;
}
@end

View File

@@ -0,0 +1,16 @@
//
// XPMineNameplateTableViewCell.h
// xplan-ios
//
// Created by 冯硕 on 2021/12/15.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@interface XPMineNameplateTableViewCell : UITableViewCell
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,194 @@
//
// XPMineNameplateTableViewCell.m
// xplan-ios
//
// Created by on 2021/12/15.
//
#import "XPMineNameplateTableViewCell.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "ThemeColor.h"
#import "NetImageView.h"
#import "UIImage+Utils.h"
@interface XPMineNameplateTableViewCell ()
///
@property (nonatomic, strong) UIView *backView;
///
@property (nonatomic, strong) NetImageView *namePlateImageView;
///
@property (nonatomic, strong) UILabel *titleLabel;
///icon
@property (nonatomic, strong) UIImageView *timeImageView;
///
@property (nonatomic, strong) UILabel *timeLabel;
///使
@property (nonatomic,strong) UIButton *useButton;
///线
@property (nonatomic,strong) UIView * lineView;
@end
@implementation XPMineNameplateTableViewCell
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {
self.selectionStyle = UITableViewCellSelectionStyleNone;
[self initSubViews];
[self initSubViewConstraints];
}
return self;
}
#pragma mark - Private Method
- (void)initSubViews {
self.backgroundColor = [UIColor clearColor];;
[self.contentView addSubview:self.backView];
[self.contentView addSubview:self.titleLabel];
[self.contentView addSubview:self.timeImageView];
[self.contentView addSubview:self.timeLabel];
[self.contentView addSubview:self.useButton];
[self.contentView addSubview:self.lineView];
[self.backView addSubview:self.namePlateImageView];
}
- (void)initSubViewConstraints {
[self.backView mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.width.mas_equalTo(80);
make.centerY.mas_equalTo(self.contentView);
make.left.mas_equalTo(self.contentView).offset(20);
}];
[self.namePlateImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.mas_equalTo(self.backView);
}];
[self.titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.backView.mas_right).offset(10);
make.top.mas_equalTo(self.backView).offset(10);
}];
[self.timeImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.titleLabel);
make.height.width.mas_equalTo(11);
make.top.mas_equalTo(self.titleLabel.mas_bottom).inset(11);
}];
[self.timeLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.timeImageView.mas_right).offset(2);
make.centerY.mas_equalTo(self.timeImageView);
}];
[self.useButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.centerY.mas_equalTo(self);
make.right.mas_equalTo(self.contentView).offset(-15);
make.height.mas_equalTo(33);
make.width.mas_equalTo(85);
}];
[self.lineView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.contentView).offset(105);
make.height.mas_equalTo(0.5);
make.bottom.mas_equalTo(self.contentView);
make.right.mas_equalTo(self.contentView).offset(-15);
}];
}
#pragma mark - private
//- (void)pricenamePlate:(UserNamePlateList *)namePlate{
//
// self.namePlate = namePlate;
//
// [self.namePlateIcon qn_setImageImageWithUrl:namePlate.nameplateImage placeholderImage:@"dress_headwear_placehoder" type:ImageTypeRoomFace];
//
// BOOL isUse = namePlate.isUsing;
// NSString *expireDays = [NSString stringWithFormat:@"%ld", namePlate.expireDays];
//
// self.dressUpNameLabel.text = namePlate.nameplateName;
// self.giveIcon.hidden = YES;
//
// //
// BOOL isExpired = namePlate.isExpired;
//
// self.useBtn.hidden = isExpired || isUse;//|使 使
// self.cancelUseBtn.hidden = isExpired || !isUse;//|使 使
//
// self.timeLabel.text = isExpired ? @"已过期" : [NSString stringWithFormat:@"剩余%@天", expireDays];
//
//}
#pragma mark - Event Response
- (void)useButtonAction:(UIButton *)sender {
}
#pragma mark - Getter && Setter
- (UIView *)backView {
if (!_backView) {
_backView = [[UIView alloc] init];
_backView.backgroundColor = [ThemeColor appCellBackgroundColor];
_backView.layer.masksToBounds = YES;
_backView.layer.cornerRadius = 10;
}
return _backView;
}
- (NetImageView *)namePlateImageView {
if (!_namePlateImageView) {
_namePlateImageView = [[NetImageView alloc] init];
_namePlateImageView.image = [UIImageConstant defaultAvatarPlaceholder];
}
return _namePlateImageView;;
}
- (UILabel *)titleLabel {
if (!_titleLabel) {
_titleLabel = [[UILabel alloc] init];
_titleLabel.font = [UIFont systemFontOfSize:15];
_titleLabel.textColor = [ThemeColor mainTextColor];
}
return _titleLabel;
}
- (UIButton *)useButton {
if (!_useButton) {
_useButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_useButton setTitle:@"使用" forState:UIControlStateNormal];
[_useButton setTitleColor:[ThemeColor confirmButtonTextColor] forState:UIControlStateNormal];
[_useButton addTarget:self action:@selector(useButtonAction:) forControlEvents:UIControlEventTouchUpInside];
_useButton.layer.masksToBounds = YES;
_useButton.layer.cornerRadius = 33/2;
_useButton.titleLabel.font = [UIFont systemFontOfSize:14];
[_useButton setBackgroundImage:[UIImage gradientColorImageFromColors:@[[ThemeColor confirmButtonGradientStartColor], [ThemeColor confirmButtonGradientEndColor]] gradientType:GradientTypeLeftToRight imgSize:CGSizeMake(10, 10)] forState:UIControlStateNormal];
}
return _useButton;
}
- (UIImageView *)timeImageView {
if (!_timeImageView) {
_timeImageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"person_Dressup_time"]];
}
return _timeImageView;
}
- (UILabel *)timeLabel {
if (!_timeLabel) {
_timeLabel = [[UILabel alloc] init];
_timeLabel.font = [UIFont systemFontOfSize:12];
_timeLabel.textColor = [ThemeColor secondTextColor];
}
return _timeLabel;
}
- (UIView *)lineView {
if (!_lineView) {
_lineView = [[UIView alloc] init];
_lineView.backgroundColor = [ThemeColor dividerColor];
}
return _lineView;
}
@end

View File

@@ -0,0 +1,23 @@
//
// XPMineDressUpListViewController.h
// xplan-ios
//
// Created by 冯硕 on 2021/12/15.
//
#import "MvpViewController.h"
#import <JXCategoryView/JXCategoryListContainerView.h>
NS_ASSUME_NONNULL_BEGIN
typedef NS_ENUM(NSInteger, DressUpListType) {
DressUpListType_HeadWear = 1,
DressUpListType_Car,
DressUpListType_Nameplate,
};
@interface XPMineDressUpListViewController : MvpViewController<JXCategoryListContentViewDelegate>
///类型
@property (nonatomic,assign) DressUpListType type;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,48 @@
//
// XPMineDressUpListViewController.m
// xplan-ios
//
// Created by on 2021/12/15.
//
#import "XPMineDressUpListViewController.h"
@interface XPMineDressUpListViewController ()
///
@property (nonatomic,strong) UITableView *tableView;
@end
@implementation XPMineDressUpListViewController
- (void)viewDidLoad {
[super viewDidLoad];
}
#pragma mark - JXCategoryListContentViewDelegate
- (UIView *)listView {
return self.view;
}
#pragma mark - Getters And Setters
- (void)setType:(DressUpListType)type {
_type = type;
}
- (UITableView *)tableView {
if (!_tableView) {
_tableView = [[UITableView alloc] initWithFrame:CGRectZero style:UITableViewStyleGrouped];
_tableView.delegate = self;
_tableView.dataSource = self;
_tableView.tableFooterView = [UIView new];
_tableView.separatorStyle = UITableViewCellSeparatorStyleNone;
_tableView.backgroundColor = [UIColor clearColor];
if (@available(iOS 11.0, *)) {
_tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}
}
return _tableView;
}
@end

View File

@@ -0,0 +1,15 @@
//
// XPMineDressUpViewController.h
// xplan-ios
//
// Created by 冯硕 on 2021/12/15.
//
#import "BaseViewController.h"
NS_ASSUME_NONNULL_BEGIN
@interface XPMineDressUpViewController : BaseViewController
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,206 @@
//
// XPMineDressUpViewController.m
// xplan-ios
//
// Created by on 2021/12/15.
//
#import "XPMineDressUpViewController.h"
///Third
#import <Masonry/Masonry.h>
#import <JXCategoryView/JXCategoryView.h>
#import <JXCategoryView/JXCategoryListContainerView.h>
#import <SDCycleScrollView/SDCycleScrollView.h>
///Tool
#import "ThemeColor.h"
#import "Api+DressUp.h"
///Model
#import "ActivityInfoModel.h"
///View
#import "XPMineDressUpListViewController.h"
#import "XPRoomViewController.h"
#import "XPWebViewController.h"
@interface XPMineDressUpViewController ()<JXCategoryViewDelegate, JXCategoryListContainerViewDelegate, SDCycleScrollViewDelegate>
///
@property (nonatomic, strong) NSArray<NSString *> *titles;
///
@property (nonatomic, strong) JXCategoryTitleView *titleView;
///lineView
@property (nonatomic, strong) JXCategoryListContainerView *contentView;
///
@property (nonatomic,strong) XPMineDressUpListViewController *headwearView;
///
@property (nonatomic,strong) XPMineDressUpListViewController *carView;
///
@property (nonatomic,strong) XPMineDressUpListViewController *nameplateView;
///
@property (nonatomic,strong) SDCycleScrollView *cycleScrollView;
///
@property (nonatomic,copy) NSArray<ActivityInfoModel *> *activityList;
@end
@implementation XPMineDressUpViewController
- (void)viewDidLoad {
[super viewDidLoad];
[self requestActivityList];
[self initSubViews];
[self initSubViewConstraints];
}
#pragma mark - Private Method
- (void)initSubViews {
[self.view addSubview:self.cycleScrollView];
[self.view addSubview:self.titleView];
[self.view addSubview:self.contentView];
}
- (void)initSubViewConstraints {
[self.cycleScrollView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(self.view);
make.left.mas_equalTo(15);
make.right.mas_equalTo(-15);
make.height.mas_equalTo(100);
}];
[self.titleView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.mas_equalTo(self.view);
make.height.mas_equalTo(50);
make.top.mas_equalTo(self.cycleScrollView.mas_bottom);
}];
[self.contentView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.bottom.mas_equalTo(self.view);
make.top.mas_equalTo(self.titleView.mas_bottom);
}];
}
- (void)requestActivityList {
[Api dressupBannerList:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
if (code == 200) {
NSArray <ActivityInfoModel *>* array = [ActivityInfoModel modelsWithArray:data.data];
if (array.count <=0) return;
self.activityList = array;
NSMutableArray * picList = [NSMutableArray array];
[array enumerateObjectsUsingBlock:^(ActivityInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.bannerPic.length > 0) {
[picList addObject:obj.bannerPic];
}
}];
self.cycleScrollView.imageURLStringsGroup = picList;
if (array.count > 1) {
[self.cycleScrollView setAutoScroll:YES];
self.cycleScrollView.autoScrollTimeInterval = 3;
} else {
[self.cycleScrollView setAutoScroll:NO];
}
}
} type:@"3"];
}
#pragma mark - JXCategoryViewDelegate
- (NSInteger)numberOfListsInlistContainerView:(JXCategoryListContainerView *)listContainerView {
return self.titles.count;
}
- (id<JXCategoryListContentViewDelegate>)listContainerView:(JXCategoryListContainerView *)listContainerView initListForIndex:(NSInteger)index {
if (index == 0) {
return self.headwearView;
} else if(index == 1) {
return self.carView;
}
return self.nameplateView;
}
- (void)cycleScrollView:(SDCycleScrollView *)cycleScrollView didSelectItemAtIndex:(NSInteger)index {
if (self.activityList.count > index) {
ActivityInfoModel * info = [self.activityList objectAtIndex:index];
if (info.skipType == ActivitySkipType_Room) {
[XPRoomViewController openRoom:info.skipUri viewController:self.navigationController];
} else if(info.skipType == ActivitySkipType_Web) {
XPWebViewController * webVC = [[XPWebViewController alloc] init];
webVC.url = info.skipUri;
[self.navigationController pushViewController:webVC animated:YES];
}
}
}
#pragma mark - Getters And Setters
- (JXCategoryTitleView *)titleView {
if (!_titleView) {
_titleView = [[JXCategoryTitleView alloc] init];
_titleView.delegate = self;
_titleView.titles = self.titles;
_titleView.titleColor = [ThemeColor secondTextColor];
_titleView.titleSelectedColor = [ThemeColor mainTextColor];
_titleView.titleFont = [UIFont fontWithName:@"PingFang-SC-Medium" size:16];
_titleView.titleSelectedFont = [UIFont fontWithName:@"PingFang-SC-Medium" size:16];
_titleView.titleLabelAnchorPointStyle = JXCategoryTitleLabelAnchorPointStyleCenter;
_titleView.contentScrollViewClickTransitionAnimationEnabled = NO;
_titleView.defaultSelectedIndex = 0;
_titleView.listContainer = self.contentView;
JXCategoryIndicatorLineView *lineView = [[JXCategoryIndicatorLineView alloc] init];
lineView.indicatorColor = UIColor.whiteColor;
lineView.indicatorWidth = 8.f;
lineView.indicatorHeight = 4.f;
lineView.indicatorCornerRadius = 2.f;
_titleView.indicators = @[lineView];
}
return _titleView;
}
- (JXCategoryListContainerView *)contentView {
if (!_contentView) {
_contentView = [[JXCategoryListContainerView alloc] initWithType:JXCategoryListContainerType_ScrollView delegate:self];
_contentView.defaultSelectedIndex = 0;
}
return _contentView;
}
- (NSArray<NSString *> *)titles {
return @[@"头饰", @"座驾", @"铭牌"];
}
- (XPMineDressUpListViewController *)headwearView {
if (!_headwearView) {
_headwearView = [[XPMineDressUpListViewController alloc] init];
_headwearView.type = DressUpListType_HeadWear;
}
return _headwearView;
}
- (XPMineDressUpListViewController *)carView {
if (!_carView) {
_carView = [[XPMineDressUpListViewController alloc] init];
_carView.type = DressUpListType_Car;
}
return _carView;
}
- (XPMineDressUpListViewController *)nameplateView {
if (!_nameplateView) {
_nameplateView = [[XPMineDressUpListViewController alloc] init];
_nameplateView.type = DressUpListType_Nameplate;
}
return _nameplateView;
}
- (SDCycleScrollView *)cycleScrollView {
if (!_cycleScrollView) {
_cycleScrollView = [SDCycleScrollView cycleScrollViewWithFrame:CGRectZero delegate:self placeholderImage:nil];
_cycleScrollView.pageControlAliment = SDCycleScrollViewPageContolAlimentCenter;
_cycleScrollView.currentPageDotColor = [UIColor whiteColor];
_cycleScrollView.pageDotColor = [UIColor colorWithWhite:1 alpha:0.15];
_cycleScrollView.currentPageDotImage = [UIImage imageNamed:@"room_activity_banner_select"];
_cycleScrollView.pageDotImage = [UIImage imageNamed:@"room_activity_banner_normal"];
_cycleScrollView.backgroundColor = [UIColor colorWithWhite:1 alpha:0.00];
_cycleScrollView.bannerImageViewContentMode = UIViewContentModeScaleAspectFit;
_cycleScrollView.pageControlBottomOffset = -20;
_cycleScrollView.hidden = YES;
}
return _cycleScrollView;
}
@end