如何将子视图添加到TableViewCell?

时间:2016-12-15 05:04:21

标签: ios objective-c xcode tableview

当单击TableViewCell中的按钮时,我需要向TableViewCell添加子视图,它应该将另一个tableview显示为子视图,并且tableview的高度应该根据单元格的数量是动态的。

我该怎么做?

How can I do this

上面的截图来自一个非常受欢迎的购物应用程序,我需要在我的项目中做同样的事情。

4 个答案:

答案 0 :(得分:3)

您可以使用简单的UITableView轻松实现此目的。为此,您需要将所有主要类别设置为 UITableview部分,并且可以将相应的子类别添加到相应的 rowOfSection

答案 1 :(得分:1)

您只能使用一个具有UITableViewStyleGrouped样式的表格视图,并设置" Men"," Women"," Kids&婴儿"作为TableView节头,保留一个布尔值来确定" numberOfRowsInSection的结果:"每个部分并重新加载tableview。

答案 2 :(得分:0)

请参阅github上的以下链接:

https://github.com/OliverLetterer/SLExpandableTableView

这包含您需要的Expandable TableView。您必须实现包含不同方法的SLExpandableTableViewDelegateSLExpandableTableViewDatasource,您还必须在其中提供内部表格视图。

希望这会对你有所帮助。

答案 3 :(得分:0)

你需要自己做一些工作我可以给出一些方法,从我的角度给你一个方法: -

  1. 制作要展开的自定义单元格。
  2. 设计单元格时,根据需要在故事板中将其高度设置为200左右,并添加要在单元格展开时看到的所有元素。

  3. 首先需要两个委托方法-didSelectItemAtIndexPath和索引路径的第二个HeightForRowAtIndexPath。

  4. 首先您需要确保用户点击您要扩展的按钮或单元格,并实现您需要调用didSelectItemAtIndexPath。

  5. 获取单元格位置后,在HeightForRowAtIndexPath中检查索引路径是否等于单元格的索引路径,如果是,则返回单元格的确切高度(即:200),否则返回默认值(即:70)你的细胞。

  6.   

    注意:在didSelectItemAtIndexPath中,您需要调用方法来更新当前单元格

    [self.tableView beginUpdates];
    [self.tableView endUpdates];