// // QXNoticeSwitchViewController.m // QXLive // // Created by 启星 on 2025/5/14. // #import "QXNoticeSwitchViewController.h" #import "QXSettingCell.h" #import "QXNoticeAnchorCell.h" @interface QXNoticeSwitchViewController () @property (nonatomic,strong)UITableView *tableView; @property (nonatomic,strong)NSDictionary *valueDict; @property (nonatomic,strong)NSDictionary *cellTypeDict; @end @implementation QXNoticeSwitchViewController - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. } -(void)viewWillAppear:(BOOL)animated{ [super viewWillAppear:animated]; [self.navigationController setNavigationBarHidden:NO animated:YES]; } -(void)setNavgationItems{ [super setNavgationItems]; if (self.type == 0) { self.navigationItem.title = QXText(@"消息提醒"); }else if (self.type == 1){ self.navigationItem.title = QXText(@"开播提醒"); }else if (self.type == 2){ self.navigationItem.title = QXText(@"屏蔽私信"); } } - (void)initSubViews{ [self configData]; self.tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, NavContentHeight, SCREEN_WIDTH, SCREEN_HEIGHT) style:(UITableViewStyleGrouped)]; self.tableView.delegate = self; self.tableView.dataSource = self; self.tableView.separatorStyle = UITableViewCellSeparatorStyleNone; self.tableView.backgroundColor = [UIColor clearColor]; [self.view addSubview:self.tableView]; } -(void)configData{ if (self.type == 0) { self.valueDict = @{ QXText(@"开播提醒"):@"", QXText(@"屏蔽私信"):@"" }; self.cellTypeDict = @{ QXText(@"开播提醒"):[NSNumber numberWithInteger:QXSettingCellTypeOnlyArrow], QXText(@"屏蔽私信"):[NSNumber numberWithInteger:QXSettingCellTypeOnlyArrow] }; [self.dataArray addObjectsFromArray:@[QXText(@"开播提醒"),QXText(@"屏蔽私信")]]; }else if (self.type == 1){ self.valueDict = @{ QXText(@"直播消息提醒"):[NSNumber numberWithBool:YES], }; self.cellTypeDict = @{ QXText(@"直播消息提醒"):[NSNumber numberWithInteger:QXSettingCellTypeSwitch], }; [self.dataArray addObject:@""]; [self.dataArray addObject:@""]; [self.dataArray addObject:@""]; }else if (self.type == 2){ self.valueDict = @{ QXText(@"屏蔽私信消息"):[NSNumber numberWithBool:YES], QXText(@"屏蔽非互关好友私信"):[NSNumber numberWithBool:YES] }; self.cellTypeDict = @{ QXText(@"屏蔽私信消息"):[NSNumber numberWithInteger:QXSettingCellTypeSwitch], QXText(@"屏蔽非互关好友私信"):[NSNumber numberWithInteger:QXSettingCellTypeSwitch] }; [self.dataArray addObjectsFromArray:@[QXText(@"屏蔽私信消息"),QXText(@"屏蔽私信消息")]]; } } -(NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{ if (self.type == 1) { return 2; } return 1; } -(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{ if (self.type == 1 && section == 0) { /// 直播消息 return 1; } return self.dataArray.count; } -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ if (indexPath.section == 1 && self.type == 1) { QXNoticeAnchorCell *cell = [QXNoticeAnchorCell cellWithTableView:tableView]; return cell; }else{ QXSettingCell *cell = [QXSettingCell cellWithTableView:tableView]; NSString *title = @""; if (self.type != 1) { title = self.dataArray[indexPath.row]; cell.needLine = (indexPath.row>=0) && (indexPath.row < self.dataArray.count-1); }else{ title = QXText(@"直播消息提醒"); cell.needLine = NO; } cell.titleLabel.text = title; cell.cellType = [[self.cellTypeDict objectForKey:title] integerValue]; cell.detailLabel.text = [NSString stringWithFormat:@"%@",[self.valueDict objectForKey:title]]; return cell; } } -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{ if (indexPath.section == 1 && self.type == 1) { return 62; } return 50; } -(UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section{ return [UIView new]; } -(CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section{ if (self.type == 0) { return 8; } return 0.01; } -(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{ [tableView deselectRowAtIndexPath:indexPath animated:YES]; if (self.type == 0) { QXNoticeSwitchViewController *vc = [[QXNoticeSwitchViewController alloc] init]; vc.type = indexPath.row+1; [self.navigationController pushViewController:vc animated:YES]; } } @end