首页完成
This commit is contained in:
@@ -26,8 +26,10 @@
|
||||
#import "QXNiceGiftPopView.h" // 天降好礼
|
||||
#import "QXFirstRechargeView.h" // 首充好礼
|
||||
#import "QXHomeTopView.h"
|
||||
#import "QXSystemNoticeViewController.h"
|
||||
#import "QXHotRoomViewController.h"
|
||||
|
||||
@interface QXHomeViewController ()<JXPagerViewDelegate,JXCategoryViewDelegate,GKCycleScrollViewDataSource,GKCycleScrollViewDelegate,QXGiftScrollViewDelegate,SDCycleScrollViewDelegate>
|
||||
@interface QXHomeViewController ()<JXPagerViewDelegate,JXCategoryViewDelegate,GKCycleScrollViewDataSource,GKCycleScrollViewDelegate,QXGiftScrollViewDelegate,SDCycleScrollViewDelegate,QXHomeTopViewDelegate>
|
||||
@property (nonatomic, strong) JXPagerView *pagingView;
|
||||
@property (nonatomic,strong)JXCategoryTitleView *categoryView;
|
||||
@property (nonatomic,strong)NSMutableArray <UIViewController*>*listVCArray;
|
||||
@@ -401,7 +403,7 @@
|
||||
self.appStoreView.hidden = YES;
|
||||
}
|
||||
// weakSelf.appStoreView.dataArray = list;
|
||||
[self.topView reloadData];
|
||||
self.topView.dataArray = list;
|
||||
} failBlock:^(NSError * _Nonnull error, NSString * _Nonnull msg) {
|
||||
|
||||
}];
|
||||
@@ -483,6 +485,31 @@
|
||||
[self.navigationController pushViewController:userHomePage animated:YES];
|
||||
}
|
||||
}
|
||||
#pragma mark - QXHomeTopViewDelegate
|
||||
-(void)didClickTopViewType:(QXHomeTopClickType)type{
|
||||
switch (type) {
|
||||
case QXHomeTopClickTypeHotRoom:{
|
||||
QXHotRoomViewController *vc = [[QXHotRoomViewController alloc] init];
|
||||
vc.list = self.topView.dataArray;
|
||||
[self.navigationController pushViewController:vc animated:YES];
|
||||
}
|
||||
break;
|
||||
case QXHomeTopClickTypeMyRoom:
|
||||
[self gotoRoom];
|
||||
break;
|
||||
case QXHomeTopClickTypeRank:
|
||||
[self gotoRankVC];
|
||||
break;
|
||||
case QXHomeTopClickTypeNotice:{
|
||||
QXSystemNoticeViewController *vc = [[QXSystemNoticeViewController alloc] init];
|
||||
vc.type = 0;
|
||||
[self.navigationController pushViewController:vc animated:YES];
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
-(void)gotoRoom{
|
||||
@@ -602,6 +629,7 @@
|
||||
-(QXHomeTopView *)topView{
|
||||
if (!_topView) {
|
||||
_topView = [[QXHomeTopView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, ScaleWidth(184))];
|
||||
_topView.delegate = self;
|
||||
}
|
||||
return _topView;
|
||||
}
|
||||
|
||||
16
QXLive/HomePage(声播)/Controlller/QXHotRoomViewController.h
Normal file
16
QXLive/HomePage(声播)/Controlller/QXHotRoomViewController.h
Normal file
@@ -0,0 +1,16 @@
|
||||
//
|
||||
// QXHotRoomViewController.h
|
||||
// QXLive
|
||||
//
|
||||
// Created by 启星 on 2025/10/21.
|
||||
//
|
||||
|
||||
#import "QXBaseViewController.h"
|
||||
#import "QXRoomListModel.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface QXHotRoomViewController : QXBaseViewController
|
||||
@property (nonatomic,strong)NSArray<QXRoomListModel *>*list;
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
||||
87
QXLive/HomePage(声播)/Controlller/QXHotRoomViewController.m
Normal file
87
QXLive/HomePage(声播)/Controlller/QXHotRoomViewController.m
Normal file
@@ -0,0 +1,87 @@
|
||||
//
|
||||
// QXHotRoomViewController.m
|
||||
// QXLive
|
||||
//
|
||||
// Created by 启星 on 2025/10/21.
|
||||
//
|
||||
|
||||
#import "QXHotRoomViewController.h"
|
||||
#import "QXHomeRoomCell.h"
|
||||
@interface QXHotRoomViewController ()<UICollectionViewDelegate,UICollectionViewDataSource,UICollectionViewDelegateFlowLayout>
|
||||
@property (nonatomic,strong)UICollectionView *collectionView;
|
||||
|
||||
@end
|
||||
|
||||
@implementation QXHotRoomViewController
|
||||
|
||||
- (void)viewDidLoad {
|
||||
[super viewDidLoad];
|
||||
// Do any additional setup after loading the view.
|
||||
}
|
||||
-(void)setNavgationItems{
|
||||
[super setNavgationItems];
|
||||
self.navigationItem.title = @"热门房间";
|
||||
}
|
||||
-(void)viewWillAppear:(BOOL)animated{
|
||||
[super viewWillAppear:animated];
|
||||
[self.navigationController setNavigationBarHidden:NO animated:YES];
|
||||
}
|
||||
-(void)initSubViews{
|
||||
[self.view addSubview:self.collectionView];
|
||||
}
|
||||
#pragma mark - UICollectionViewDelegate,UICollectionViewDataSource,UICollectionViewDelegateFlowLayout
|
||||
-(NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView{
|
||||
return 1;
|
||||
}
|
||||
-(NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{
|
||||
return self.list.count;
|
||||
}
|
||||
-(__kindof UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
|
||||
QXHomeRoomCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:@"QXHomeRoomCell" forIndexPath:indexPath];
|
||||
cell.model = self.list[indexPath.row];
|
||||
return cell;
|
||||
}
|
||||
-(void)collectionView:(UICollectionView *)collectionView willDisplayCell:(UICollectionViewCell *)cell forItemAtIndexPath:(NSIndexPath *)indexPath{
|
||||
QXHomeRoomCell *roomCell = (QXHomeRoomCell *)cell;
|
||||
[roomCell startAnimating];
|
||||
}
|
||||
- (void)collectionView:(UICollectionView *)collectionView didEndDisplayingCell:(UICollectionViewCell *)cell forItemAtIndexPath:(NSIndexPath *)indexPath{
|
||||
QXHomeRoomCell *roomCell = (QXHomeRoomCell *)cell;
|
||||
[roomCell endAnimating];
|
||||
}
|
||||
|
||||
-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath{
|
||||
return CGSizeMake((SCREEN_WIDTH-15*3-1)/2.0, (SCREEN_WIDTH-15*3-1)/2.0);
|
||||
}
|
||||
|
||||
-(void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{
|
||||
QXRoomListModel *model = self.list[indexPath.row];
|
||||
[[QXGlobal shareGlobal] joinRoomWithRoomId:model.room_id isRejoin:NO navagationController:self.navigationController];
|
||||
|
||||
}
|
||||
-(UICollectionView *)collectionView{
|
||||
if (!_collectionView) {
|
||||
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init];
|
||||
layout.minimumLineSpacing = 15;
|
||||
layout.minimumInteritemSpacing = 15;
|
||||
layout.sectionInset = UIEdgeInsetsMake(0, 15, 0, 15);
|
||||
_collectionView = [[UICollectionView alloc] initWithFrame:CGRectMake(0, 16, SCREEN_WIDTH, SCREEN_HEIGHT-NavContentHeight) collectionViewLayout:layout];
|
||||
_collectionView.delegate = self;
|
||||
_collectionView.dataSource = self;
|
||||
_collectionView.bounces = YES;
|
||||
_collectionView.backgroundColor = [UIColor clearColor];
|
||||
[_collectionView registerNib:[UINib nibWithNibName:@"QXHomeRoomCell" bundle:[NSBundle mainBundle]] forCellWithReuseIdentifier:@"QXHomeRoomCell"];
|
||||
}
|
||||
return _collectionView;
|
||||
}
|
||||
/*
|
||||
#pragma mark - Navigation
|
||||
|
||||
// In a storyboard-based application, you will often want to do a little preparation before navigation
|
||||
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
|
||||
// Get the new view controller using [segue destinationViewController].
|
||||
// Pass the selected object to the new view controller.
|
||||
}
|
||||
*/
|
||||
|
||||
@end
|
||||
Reference in New Issue
Block a user