// // QXDynamicViewController.m // QXLive // // Created by 启星 on 2025/4/24. // #import "QXDynamicViewController.h" #import "QXPublishViewController.h" #import "JXCategoryView.h" #import "QXExpansionViewController.h" #import "QXFindViewController.h" @interface QXDynamicViewController () @property (nonatomic,strong)UIButton *publishBtn; @property (nonatomic,strong)JXCategoryTitleView *categoryView; @property (nonatomic,strong)JXCategoryListContainerView *containerView; @property (nonatomic,strong)QXFindViewController *findVC; @end @implementation QXDynamicViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. } -(void)viewWillAppear:(BOOL)animated{ [super viewWillAppear:animated]; [self.navigationController setNavigationBarHidden:YES animated:YES]; } - (void)initSubViews{ // UILabel *tLabel = [[UILabel alloc] init]; // tLabel.text = QXText(@"广场"); // tLabel.font = [UIFont boldSystemFontOfSize:20]; // [self.view addSubview:tLabel]; // [tLabel mas_makeConstraints:^(MASConstraintMaker *make) { // make.left.mas_equalTo(16); // make.top.mas_equalTo(kSafeAreaTop +10); // }]; self.categoryView = [[JXCategoryTitleView alloc] initWithFrame:CGRectMake(14, kSafeAreaTop, 300, 44)]; self.categoryView.delegate = self; // self.categoryView.titles = @[QXText(@"发现"),QXText(@"扩列")]; self.categoryView.titles = @[QXText(@"新人/扩列"),QXText(@"发现")]; self.categoryView.titleSelectedColor = [UIColor colorWithHexString:@"#ffffff"]; self.categoryView.titleColor = [UIColor colorWithHexString:@"#666666"]; self.categoryView.cellWidth = JXCategoryViewAutomaticDimension; self.categoryView.contentEdgeInsetLeft = 10; self.categoryView.cellSpacing = 25; // self.categoryView.titleLabelZoomScale = 1.1; self.categoryView.titleLabelZoomEnabled = YES; self.categoryView.titleFont = [UIFont boldSystemFontOfSize:16]; self.categoryView.titleSelectedFont = [UIFont boldSystemFontOfSize:18]; self.categoryView.averageCellSpacingEnabled = NO; JXCategoryIndicatorImageView *indicatorView = [[JXCategoryIndicatorImageView alloc] init]; indicatorView.indicatorImageView.image = [UIImage imageNamed:@"home_slider"]; indicatorView.indicatorImageViewSize = CGSizeMake(35, 8); indicatorView.verticalMargin = 11; self.categoryView.indicators = @[indicatorView]; self.containerView = [[JXCategoryListContainerView alloc] initWithType:(JXCategoryListContainerType_ScrollView) delegate:self]; self.containerView.frame = CGRectMake(0, self.categoryView.bottom, SCREEN_WIDTH, SCREEN_HEIGHT-self.categoryView.bottom); // self.containerView.scrollView.scrollEnabled = NO; [self.view addSubview:self.categoryView]; [self.view addSubview:self.containerView]; self.categoryView.listContainer = self.containerView; [self categoryView:self.categoryView didSelectedItemAtIndex:0]; [self.view addSubview:self.publishBtn]; } -(NSInteger)numberOfListsInlistContainerView:(JXCategoryListContainerView *)listContainerView{ return 2; } -(id)listContainerView:(JXCategoryListContainerView *)listContainerView initListForIndex:(NSInteger)index{ // if (index == 0) { // QXFindViewController *vc = [[QXFindViewController alloc] init]; // self.findVC = vc; // return vc; // }else{ // QXExpansionViewController *vc = [[QXExpansionViewController alloc] init]; // return vc; // } if (index == 0) { QXExpansionViewController *vc = [[QXExpansionViewController alloc] init]; return vc; }else{ QXFindViewController *vc = [[QXFindViewController alloc] init]; self.findVC = vc; return vc; } } -(void)categoryView:(JXCategoryBaseView *)categoryView didSelectedItemAtIndex:(NSInteger)index{ self.publishBtn.hidden = !(index==1); [self updateBgImage:index==0?@"exbpansion_bg":@"app_bg"]; if (index == 0) { self.categoryView.titleSelectedColor = [UIColor colorWithHexString:@"#333333"]; self.categoryView.titleColor = [UIColor colorWithHexString:@"#666666"]; }else{ self.categoryView.titleSelectedColor = [UIColor colorWithHexString:@"#ffffff"]; self.categoryView.titleColor = [UIColor colorWithHexString:@"#666666"]; } } #pragma mark - action -(void)pulishAction{ if (!QXGlobal.shareGlobal.isLogin) { [[QXGlobal shareGlobal] logOut]; return; } QXPublishViewController *vc = [[QXPublishViewController alloc] init]; MJWeakSelf vc.publishFinishBlock = ^{ [weakSelf.findVC.tableView.mj_header beginRefreshing]; [weakSelf.findVC getTopicList]; }; [self.navigationController pushViewController:vc animated:YES]; } -(UIButton *)publishBtn{ if (!_publishBtn) { _publishBtn = [[UIButton alloc] initWithFrame:CGRectMake(SCREEN_WIDTH-44-8, kSafeAreaTop, 44, 44)]; [_publishBtn setImage:[UIImage imageNamed:@"publish_icon"] forState:UIControlStateNormal]; [_publishBtn setImage:[UIImage imageNamed:@"publish_icon"] forState:UIControlStateHighlighted]; [_publishBtn addTarget:self action:@selector(pulishAction) forControlEvents:UIControlEventTouchUpInside]; _publishBtn.hidden = YES; } return _publishBtn; } @end