我有一个分组表视图,每组中有多个单元格。我想要的是,当用户选择任何特定单元格时;我想显示特定选定单元格的子元素。
例如:如果用户选择"A"
,那么我应该显示"A1","A2","A3"... Or "B"
然后它应该显示"B1","B2","B3"...**
在另一个viewcontroller的表对象中。**
对子值进行硬编码没有限制。我的 segue已从表视图连接到另一个视图控制器
。答案 0 :(得分:0)
您需要使用折叠表的概念
结帐 step by step explanation
以扩展&折叠部分
您也可以在此处查看 sample code
。
享受编程
答案 1 :(得分:0)
答案 2 :(得分:0)
在第二个视图控制器中创建属性
@property (nonatomic) NSIndexPath *parentIndex;
并在.m文件中合成
@synthesize parentIndex;
在你的第一个tableview控制器中创建一个ivar
NSIndexPath *passIndexPath;
并在您的表委托
中- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
passIndexPath = indexPath;
[self performSegueWithIdentifier:@"push_SecondTableViewController" sender:self];
}
现在实现以下功能,它将在您触发segue时正确运行
- (void) prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([[segue identifier] isEqualToString:@"push_SecondTableViewController"])
{
Your_SecondViewController *viewController = [segue destinationViewController];
viewController.parentIndex = passIndexPath;
//Here we are passing the indexpath of the selected cell so now you can set the
//data of the table in second view controller
}
}
现在在您的SecondView控制器中,在parentIndex的帮助下,您知道哪个部分选择了哪一行,您可以相应地显示数据
您甚至可以为子单元格传递数据数组。
希望这会对你有所帮助,