/**1.定义bool变量*/
BOOL isClose[50];
/**2.自定义组头视图*/
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
UIButton *btn = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 0, 30)];
[btn setBackgroundImage:[UIImage imageNamed:@"hotMovieBottomImage@2x"] forState:UIControlStateNormal];
btn.tag = section;
[btn addTarget:self action:@selector(buttonAction:) forControlEvents:UIControlEventTouchUpInside];
UILabel *titleLabel = [[UILabel alloc] initWithFrame:CGRectMake(0, 0, ScreenW, 45)];
titleLabel.backgroundColor = [UIColor clearColor];
NSDictionary *dic = _distrData[section];
NSString *name = dic[@"name"];
titleLabel.text = name;
[btn addSubview:titleLabel];
return btn;
}
/**头视图按钮点击事件*/
- (void)buttonAction:(UIButton *)button {
//取得点击的组
NSInteger section = button.tag;
//取得对应组的标示
isClose[section] = !isClose[section];
//[self.tableView reloadData];
NSIndexSet *indexSet = [NSIndexSet indexSetWithIndex:section];
[self.tableView reloadSections:indexSet withRowAnimation:UITableViewRowAnimationFade];
}
/**3.设置组的头视图的高度*/
- (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section {
return 45;
}
//返回多少行
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
//取得对应组的标示
BOOL close = isClose[section];
if (close) {
return 0;
}
NSDictionary *dict = _distrData[section];
/**取得ID*/
NSString *ID = dict[@"id"];
/**用ID取得数组*/
NSArray *array = [_cinmaDict objectForKey:ID];
return array.count;
}