在UITableViewCell中添加UITableView

时间:2015-06-26 05:56:33

标签: ios xcode uitableview

我正在使用自定义UITableViewCell,我希望在UITableView内添加UITableViewCell,以便有任何控制器可以执行相同操作

这是我要在项目中添加的内容的图像

enter image description here

这是可展开的UITableView,其中点击表格中的第一行后按钮被展开。

因此,如果有任何类似的控制器,请建议我。

提前致谢。

4 个答案:

答案 0 :(得分:4)

Apple不建议将表视图添加为其他可滚动对象的子视图。 如果你想开发这样的东西,这里有适合你的步骤:

  1. 在表格视图中为“表格视图”制作单独的部分
  2. 该部分的第一行 - 您的可点击行
  3. 当用户触摸某行时,请通过- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath处理。
  4. 通过修改数据源阵列将其他单元格插入此部分。
  5. 重新加载部分或进行更新,

    as

    [self.dataSourceArray insertObject:object atIndex:indexPath.row];
    NSIndexPath *indexPath = [NSIndexPath indexPathForRow:0 inSection:0];
    [self.tableView insertRowsAtIndexPaths:@[indexPath] withRowAnimation:UITableViewRowAnimationAutomatic];
    

答案 1 :(得分:4)

我建议不要嵌套表视图。作为用户,当一个可滚动实体位于另一个可滚动实体内时令人沮丧。当您滑动时,您无法确定内容的行为方式。可能需要多次滑动才能从父级的一端到另一端。重要的是你的滑动时间。使用起来很糟糕。

尝试使用此方法扩展表格视图的Expand/collapse section in UITableView in iOS

部分 祝你好运!

答案 2 :(得分:1)

- >对于想要添加视图的UITableView的单独部分,如tableView。

- >取该部分的第一行。

- >覆盖UITableView的委托方法。 - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath;

- >在此方法中更新tableview的数据并重新加载该部分。

 [self.dataSourceArray removeObjectAtIndex:indexPath.section];
    [self.dataSourceArray insertObject:object atIndex:indexPath.section];
    [tableView reloadSections:[NSIndexSet indexSetWithIndex:indexPath.section] withRowAnimation:UITableViewRowAnimationAutomatic];

答案 3 :(得分:0)

使用标题,您可以实现相同的目标。 这个答案可以帮到你,

Expand/collapse section in UITableView in iOS