From a75004fe5788ce98de5cd68ee50cd30e706e18b2 Mon Sep 17 00:00:00 2001 From: QQQ <3671373519@qq.com> Date: Wed, 22 May 2024 19:06:21 +0800 Subject: [PATCH] =?UTF-8?q?=E7=A7=BB=E9=99=A4=20A/B=20=E7=9B=B8=E5=85=B3?= =?UTF-8?q?=E4=BB=A3=E7=A0=81=E3=80=82=20=E7=A7=BB=E9=99=A4=20XPHomeSlogan?= =?UTF-8?q?ViewController?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- YuMi.xcodeproj/project.pbxproj | 12 - .../View/XPHomeSloganViewController.h | 16 - .../View/XPHomeSloganViewController.m | 311 ------------------ .../YMTabbar/View/TabbarViewController.m | 2 +- 4 files changed, 1 insertion(+), 340 deletions(-) delete mode 100644 YuMi/Modules/YMNewHome/View/XPHomeSloganViewController.h delete mode 100644 YuMi/Modules/YMNewHome/View/XPHomeSloganViewController.m diff --git a/YuMi.xcodeproj/project.pbxproj b/YuMi.xcodeproj/project.pbxproj index 87f79d00..a525ff47 100644 --- a/YuMi.xcodeproj/project.pbxproj +++ b/YuMi.xcodeproj/project.pbxproj @@ -35,7 +35,6 @@ 142721AF29A75F6F00C7C423 /* SJXCSMIPHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 1427218629A75F6F00C7C423 /* SJXCSMIPHelper.m */; }; 142721B229A7647F00C7C423 /* XPBlankViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 142721B129A7647F00C7C423 /* XPBlankViewController.m */; }; 1464C5EA29A45FC300AF7C94 /* XPButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 1464C5E929A45FC300AF7C94 /* XPButton.m */; }; - 1464C5ED29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1464C5EC29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.m */; }; 1464C5F029A49DDD00AF7C94 /* XPMineSimpleUserInfoHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = 1464C5EF29A49DDD00AF7C94 /* XPMineSimpleUserInfoHeaderView.m */; }; 1464C5F329A4C18000AF7C94 /* XPIAPRechargeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1464C5F229A4C18000AF7C94 /* XPIAPRechargeViewController.m */; }; 1464C5F629A4CA8C00AF7C94 /* XPIAPRechargeCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 1464C5F529A4CA8C00AF7C94 /* XPIAPRechargeCollectionViewCell.m */; }; @@ -1226,7 +1225,6 @@ E87DF4D72A42C9C3009C1185 /* HomePlayRoomModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4D52A42C9C3009C1185 /* HomePlayRoomModel.m */; }; E87DF4DA2A42C9D9009C1185 /* HomeCollectRoomModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4D82A42C9D8009C1185 /* HomeCollectRoomModel.m */; }; E87DF4DD2A42CA12009C1185 /* HomeSearchResultModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4DB2A42CA12009C1185 /* HomeSearchResultModel.m */; }; - E87DF4E02A42CA92009C1185 /* XPHomeSloganViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4DE2A42CA92009C1185 /* XPHomeSloganViewController.m */; }; E87DF4E42A42CAD2009C1185 /* XPHomeSearchNavView.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4E22A42CAD2009C1185 /* XPHomeSearchNavView.m */; }; E87DF4E72A42CB00009C1185 /* XPHomePresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4E52A42CAFF009C1185 /* XPHomePresenter.m */; }; E87DF4EC2A42CB60009C1185 /* XPSearchListTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4EA2A42CB60009C1185 /* XPSearchListTableViewCell.m */; }; @@ -1591,8 +1589,6 @@ 142721B129A7647F00C7C423 /* XPBlankViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPBlankViewController.m; sourceTree = ""; }; 1464C5E829A45FC300AF7C94 /* XPButton.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPButton.h; sourceTree = ""; }; 1464C5E929A45FC300AF7C94 /* XPButton.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPButton.m; sourceTree = ""; }; - 1464C5EB29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineSimpleUserInfoViewController.h; sourceTree = ""; }; - 1464C5EC29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineSimpleUserInfoViewController.m; sourceTree = ""; }; 1464C5EE29A49DDD00AF7C94 /* XPMineSimpleUserInfoHeaderView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineSimpleUserInfoHeaderView.h; sourceTree = ""; }; 1464C5EF29A49DDD00AF7C94 /* XPMineSimpleUserInfoHeaderView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineSimpleUserInfoHeaderView.m; sourceTree = ""; }; 1464C5F129A4C18000AF7C94 /* XPIAPRechargeViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPIAPRechargeViewController.h; sourceTree = ""; }; @@ -3826,8 +3822,6 @@ E87DF4D92A42C9D9009C1185 /* HomeCollectRoomModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HomeCollectRoomModel.h; sourceTree = ""; }; E87DF4DB2A42CA12009C1185 /* HomeSearchResultModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HomeSearchResultModel.m; sourceTree = ""; }; E87DF4DC2A42CA12009C1185 /* HomeSearchResultModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HomeSearchResultModel.h; sourceTree = ""; }; - E87DF4DE2A42CA92009C1185 /* XPHomeSloganViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XPHomeSloganViewController.m; sourceTree = ""; }; - E87DF4DF2A42CA92009C1185 /* XPHomeSloganViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XPHomeSloganViewController.h; sourceTree = ""; }; E87DF4E22A42CAD2009C1185 /* XPHomeSearchNavView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XPHomeSearchNavView.m; sourceTree = ""; }; E87DF4E32A42CAD2009C1185 /* XPHomeSearchNavView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XPHomeSearchNavView.h; sourceTree = ""; }; E87DF4E52A42CAFF009C1185 /* XPHomePresenter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XPHomePresenter.m; sourceTree = ""; }; @@ -9277,8 +9271,6 @@ E87E62522A3F55B2002F68C9 /* View */ = { isa = PBXGroup; children = ( - E87DF4DF2A42CA92009C1185 /* XPHomeSloganViewController.h */, - E87DF4DE2A42CA92009C1185 /* XPHomeSloganViewController.m */, E87DF4B82A42C7BB009C1185 /* Search */, E87E625F2A3F5669002F68C9 /* Cell */, E87E625E2A3F565D002F68C9 /* CustomView */, @@ -9534,8 +9526,6 @@ E8D34D6328084E40009C4835 /* XPMineUserInfoGiftWallViewController.m */, E8998D892859CB6A00C68558 /* XPMineUserInfoGiftWallSubViewController.h */, E8998D8A2859CB6A00C68558 /* XPMineUserInfoGiftWallSubViewController.m */, - 1464C5EB29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.h */, - 1464C5EC29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.m */, 1464C5EE29A49DDD00AF7C94 /* XPMineSimpleUserInfoHeaderView.h */, 1464C5EF29A49DDD00AF7C94 /* XPMineSimpleUserInfoHeaderView.m */, ); @@ -11417,7 +11407,6 @@ F1D8556F2931FC86008C418F /* XPRoomYearActivityView.m in Sources */, 238B37C72AC55A2C00BFC9D5 /* XPTreasureFairyPrizeRecordView.m in Sources */, E8B9843628ABA8B40022D026 /* XPMonentPublishSuccessView.m in Sources */, - E87DF4E02A42CA92009C1185 /* XPHomeSloganViewController.m in Sources */, 238ED83A2AE2891D0014EF9D /* PIRoomEnterRedPacketView.m in Sources */, 23E9E9972A80C3A100B792F2 /* XPMineGuildPersonalBillRecordVC.m in Sources */, E81C279626EB39CC0031E639 /* LoginForgetPasswordPresent.m in Sources */, @@ -11985,7 +11974,6 @@ 2357146E2BEB816B004C81D6 /* MSSessionPublicChatHallHeadView.m in Sources */, 238B37CD2AC55A2C00BFC9D5 /* XPTreasureFailyResultView.m in Sources */, E824545126F5CE6E00BE8163 /* XPMineModifPayPwdPresenter.m in Sources */, - 1464C5ED29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.m in Sources */, E8098CB1282E86EF0090B9F0 /* XPMonentsContentView.m in Sources */, E85E3FA728B7A6F000268DC8 /* MessageContentMonentsView.m in Sources */, 234E50A82BF5EBDD005CB6D5 /* MSSessionPublicChatHalRightTextCell.m in Sources */, diff --git a/YuMi/Modules/YMNewHome/View/XPHomeSloganViewController.h b/YuMi/Modules/YMNewHome/View/XPHomeSloganViewController.h deleted file mode 100644 index d152789a..00000000 --- a/YuMi/Modules/YMNewHome/View/XPHomeSloganViewController.h +++ /dev/null @@ -1,16 +0,0 @@ -// -// YMHomeSloganViewController.h -// YUMI -// -// Created by XY on 2023/2/17. -// - -#import "MvpViewController.h" - -NS_ASSUME_NONNULL_BEGIN - -@interface XPHomeSloganViewController : MvpViewController - -@end - -NS_ASSUME_NONNULL_END diff --git a/YuMi/Modules/YMNewHome/View/XPHomeSloganViewController.m b/YuMi/Modules/YMNewHome/View/XPHomeSloganViewController.m deleted file mode 100644 index 5859b878..00000000 --- a/YuMi/Modules/YMNewHome/View/XPHomeSloganViewController.m +++ /dev/null @@ -1,311 +0,0 @@ -// -// YMHomeSloganViewController.m -// YUMI -// -// Created by XY on 2023/2/17. -// - -#import "XPHomeSloganViewController.h" -#import "XPHomeUserView.h" -#import "YUMIMacroUitls.h" -#import "DJDKMIMOMColor.h" -#import "NetImageView.h" -#import -#import "XPWeakTimer.h" -#import "AccountInfoStorage.h" -#import "Api+Home.h" -///M -#import "HomeRecommendRoomModel.h" -///VC -#import "XPRoomViewController.h" -#import "XPMineSimpleUserInfoViewController.h" - -@interface XPHomeSloganViewController () { - NSTimer * timer; -} - -/// 用户视图数组 -@property (nonatomic, strong) NSMutableArray *userViewArr; -/// 背景图 -@property (nonatomic, strong) NetImageView *bgImageView; -/// MoliStar圈 -@property (nonatomic, strong) UIImageView *nameImageView; -@property (nonatomic, strong) UIButton *enterRoomBtn; -///个人房列表数据 -@property (nonatomic,strong) NSMutableArray *hotRoomList; - -@end - -@implementation XPHomeSloganViewController - -//- (XPHomeRecommendPresenter *)createPresenter { -// return [[XPHomeRecommendPresenter alloc] init]; -//} - -- (BOOL)isHiddenNavBar { - return YES; -} - -- (void)viewDidLoad { - [super viewDidLoad]; - [self createUI]; - [self addTimer]; - [self loadRecommend]; - -} - -- (void)loadRecommend { - NSString * uid = [AccountInfoStorage instance].getUid; - NSString * pageStr = [NSString stringWithFormat:@"%d", 1]; - NSString * pageSizeStr = [NSString stringWithFormat:@"%d", 10]; - [Api getRecommendListComplection:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) { - if (code == 200) { - NSArray * array = [HomeRecommendRoomModel modelsWithArray:data.data]; - [self getHomeRecommendRoomListSuccess:array]; - } else { - - - } - } uid:uid tabId:@"" pageNum:pageStr pageSize:pageSizeStr]; -} - -- (void)viewWillAppear:(BOOL)animated { - [super viewWillAppear:animated]; - if (timer) { - [timer setFireDate:[NSDate distantPast]]; //很远的过去 - } -} - -- (void)viewWillDisappear:(BOOL)animated { - [super viewWillDisappear:animated]; - if (timer) { - //关闭定时器 - [timer setFireDate:[NSDate distantFuture]]; //很远的将来 - } -} - -- (void)createUI { - [self.view addSubview:self.bgImageView]; - [self.view addSubview:self.nameImageView]; - [self.view addSubview:self.enterRoomBtn]; - - [self.bgImageView mas_makeConstraints:^(MASConstraintMaker *make) { - make.edges.mas_equalTo(self.view); - }]; - [self.nameImageView mas_makeConstraints:^(MASConstraintMaker *make) { - make.top.mas_equalTo(kStatusBarHeight+20); - make.leading.mas_equalTo(23); - make.width.mas_equalTo(100); - make.height.mas_equalTo(45); - }]; - - [self.enterRoomBtn mas_makeConstraints:^(MASConstraintMaker *make) { - make.width.mas_equalTo(30); - make.height.mas_equalTo(40); - make.centerY.mas_equalTo(self.nameImageView); - make.trailing.mas_equalTo(self.view).offset(-15); - }]; -} - -- (void)addTimer { - timer = [XPWeakTimer scheduledTimerWithTimeInterval:15 block:^(id userInfo) { - [self loadRecommend]; - } userInfo:nil repeats:YES]; -} - -#pragma mark - XPHomeUserViewDelegate - -- (void)userViewClickAction:(HomeRecommendRoomModel *)model { - if (model.roomUid.length > 0) { -// [XPRoomViewController openRoom:model.uid fromNick:nil fromType:UserEnterRoomFromType_Home_Recommend fromUid:nil viewController:self]; - XPMineSimpleUserInfoViewController *infoVC = [[XPMineSimpleUserInfoViewController alloc] init]; - infoVC.uid = [model.roomUid integerValue]; - [self.navigationController pushViewController:infoVC animated:YES]; - } -} - -#pragma mark - XPHomeRecommendProtocol - -- (void)getHomeRecommendRoomListSuccess:(NSArray *)list { - if (list.count > 10) { - list = [list subarrayWithRange:NSMakeRange(0, 9)]; - } - [self.hotRoomList removeAllObjects]; - [self.hotRoomList addObjectsFromArray:list]; - // 二次添加 - if (self.userViewArr.count > 0) { - [self removeUserViews]; - return; - } - // 首次添加 - for (HomeRecommendRoomModel *model in self.hotRoomList) { - XPHomeUserView *userView = [self showUserView:model]; - if(userView != nil) { - [self.userViewArr addObject:userView]; - } - } -} - -- (void)getHomeRecommendDataFail { - -} - -/// 添加用户视图 -- (XPHomeUserView *)showUserView:(HomeRecommendRoomModel *)model { - // 随机坐标 - CGFloat scale = (arc4random_uniform(50)+1)*0.01 + 0.5; - CGRect rect = [self getRandomRect]; - CGRect scaleRect = rect; - scaleRect.size.width = rect.size.width * scale; - scaleRect.size.height = rect.size.height * scale; - // 确保不重叠 - NSInteger count = 0; //循环超过1000次强制退出 - BOOL contain = [self intersectsRect:scaleRect]; - while (contain || count < 1000) { - scale = (arc4random_uniform(50)+1)*0.01 + 0.5; - rect = [self getRandomRect]; - scaleRect = rect; - scaleRect.size.width = rect.size.width * scale; - scaleRect.size.height = rect.size.height * scale; - contain = [self intersectsRect:scaleRect]; - count++; - } - //循环1000次还重叠,就放弃添加,防止死循环 - if (contain == YES) { - return nil; - } - // 添加 - XPHomeUserView *userView = [[XPHomeUserView alloc] init]; - userView.frame = rect; - userView.transform = CGAffineTransformMakeScale(scale, scale); - userView.frame = scaleRect; - userView.delegate = self; - [self.view addSubview:userView]; - userView.roomModel = model; - - // 动画出现 - userView.alpha = 0; - [UIView animateWithDuration:0.5 animations:^{ - userView.alpha = 1; - } completion:^(BOOL finished) { - - }]; - return userView; - -} - -- (void)removeUserViews { - dispatch_group_t group = dispatch_group_create(); - dispatch_queue_t queue = dispatch_get_main_queue(); - NSUInteger viewCount = self.userViewArr.count; - - for (int i = 0; i< viewCount; i++) { - dispatch_group_enter(group); - XPHomeUserView *userView = self.userViewArr[i]; - - [UIView animateWithDuration:0.5 animations:^{ - userView.alpha = 0; - userView.transform = CGAffineTransformMakeScale(0.01, 0.01); - } completion:^(BOOL finished) { - [userView removeFromSuperview]; - [self.userViewArr removeObject:userView]; - - dispatch_group_leave(group); - }]; - } - dispatch_group_notify(group, queue, ^{ - for (HomeRecommendRoomModel *model in self.hotRoomList) { - XPHomeUserView *userView = [self showUserView:model]; - if (userView !=nil) { - [self.userViewArr addObject:userView]; - } - } - }); - -} - -/// 获取随机坐标 -- (CGRect)getRandomRect { - @autoreleasepool { - // 用户视图原始大小 - CGFloat userViewWidth = 120; - CGFloat userViewHeight = 120; - CGFloat statusBarHeight = kStatusBarHeight; - // 限定随机区域 - CGFloat areaWidth = self.view.bounds.size.width - userViewWidth - 5*2; - CGFloat areaHeight = self.view.bounds.size.height - statusBarHeight - 70 - 90- userViewHeight; - - CGFloat x = arc4random_uniform(areaWidth)+5; - CGFloat y = arc4random_uniform(areaHeight)+statusBarHeight+ 70; - - CGRect rect = CGRectMake(x, y, userViewWidth, userViewHeight); - return rect; - } -} - -/// 判断新生成的坐标是否和已添加的用户视图坐标重叠 -/// - Parameter targetRect: 目标坐标 -- (BOOL)intersectsRect:(CGRect)targetRect { - @autoreleasepool { - for (XPHomeUserView *userView in self.userViewArr) { - CGRect frame = userView.frame; - BOOL b = CGRectIntersectsRect(targetRect, frame); - if (b) { - return YES; - } - } - return NO; - } -} - -- (void)likeButtonAction:(UIButton *)sender { - NSString* roomUid = [AccountInfoStorage instance].getUid; - [XPRoomViewController openRoom:roomUid viewController:self]; -} - -#pragma mark - 懒加载 - -- (NSMutableArray *)userViewArr { - if (!_userViewArr) { - _userViewArr = [NSMutableArray array]; - } - return _userViewArr; -} - -- (NSMutableArray *)hotRoomList { - if (!_hotRoomList) { - _hotRoomList = [NSMutableArray array]; - } - return _hotRoomList; -} - -- (NetImageView *)bgImageView { - if (!_bgImageView) { - _bgImageView = [[NetImageView alloc] init]; - _bgImageView.contentMode = UIViewContentModeScaleAspectFill; - _bgImageView.image = [UIImage imageNamed:@"home_bg"]; - } - return _bgImageView; -} - -- (UIImageView *)nameImageView { - if (!_nameImageView) { - _nameImageView = [[UIImageView alloc] init]; - _nameImageView.contentMode = UIViewContentModeScaleAspectFit; - _nameImageView.image = [UIImage imageNamed:@"home_name"]; - } - return _nameImageView; -} - -- (UIButton *)enterRoomBtn { - if (!_enterRoomBtn) { - _enterRoomBtn = [UIButton buttonWithType:UIButtonTypeCustom]; - [_enterRoomBtn setImage:[UIImage imageNamed:@"home_nav_open_room"] forState:UIControlStateNormal]; - [_enterRoomBtn setImage:[UIImage imageNamed:@"home_nav_open_room"] forState:UIControlStateSelected]; - [_enterRoomBtn addTarget:self action:@selector(likeButtonAction:) forControlEvents:UIControlEventTouchUpInside]; - } - return _enterRoomBtn; -} - - -@end diff --git a/YuMi/Modules/YMTabbar/View/TabbarViewController.m b/YuMi/Modules/YMTabbar/View/TabbarViewController.m index ef7a7ff1..2386f71d 100644 --- a/YuMi/Modules/YMTabbar/View/TabbarViewController.m +++ b/YuMi/Modules/YMTabbar/View/TabbarViewController.m @@ -65,13 +65,13 @@ #import "XPTaskCompleteTipView.h" #import "XPWebViewController.h" #import "XPMineUserInfoViewController.h" + #import "XPMonentsRecommendViewController.h" #import "XPMonentsViewController.h" #import "XPReceiveRedPacketView.h" #import "XPRoomYearActivityView.h" #import "XPUpgradeView.h" #import "XPMomentListViewController.h" -#import "XPHomeSloganViewController.h" #import "XPSimpleMineViewController.h" #import "XPLoginAuthCodeVC.h" ///Present