方式一:
1 原理
打开:
[self.stateArrayaddObjectsFromArray:@[@"ViewCell0"]];
[self.stateArrayaddObjectsFromArray:@[@"ViewCell0"]];
[_tableView beginUpdates];
[_tableView insertRowsAtIndexPaths:@[path,path2]withRowAnimation:nil];
[_tableView endUpdates];
关闭:
[self.stateArray removeAllObjects];
[_tableView beginUpdates];
[_tableView deleteRowsAtIndexPaths:@[path,path2]withRowAnimation:nil];
[_tableView endUpdates];
在 section Header上触发
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
HeaderView * header = [[HeaderView alloc]initWithFrame:CGRectMake(0,0,self.view.frame.size.width,40)];
HeaderButton * btn = [HeaderButton buttonWithType:UIButtonTypeDetailDisclosure];
[btn addTarget:selfaction:@selector(btnAct:)forControlEvents:UIControlEventTouchUpInside];
btn.frame =CGRectMake(180,20,20,20);
btn.tag = section;
btn.canOpen =1;
btn.isOpen =1;
header.backgroundColor = [UIColoryellowColor];
HeaderView * header2 = [[HeaderViewalloc]initWithFrame:CGRectMake(0,0,self.view.frame.size.width,20)];
header2.backgroundColor = [UIColorgreenColor];
[header addSubview:header2];
[header addSubview:btn];
return header;
}
方式二:
代码Demo
方式 1:http://download.csdn.net/detail/bravegogo/9636715
方式 2: