将 UITableView 单元堆叠在彼此之上

Posted

技术标签:

【中文标题】将 UITableView 单元堆叠在彼此之上【英文标题】:Stack UITableView Cells on top of eachother 【发布时间】:2014-10-09 18:37:57 【问题描述】:

我正在创建一个使用列表视图作为屏幕的应用程序。当我单击项目时,我希望项目“相互堆叠”(想想金属襟翼),

    - (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath*)indexPath
   
     int i = 0;
     for(UITableViewCell *v in [self.tableView subviews])
     
        NSLog(@"%d",i);
        [UIView animateWithDuration:0.5 animations:^
          if(i == 0)
          
             [v setFrame:CGRectMake(0, self.view.frame.size.height - 50 - (indexPath.row + 200)-i, self.view.frame.size.height, 100)];
          
       completion:^(BOOL finished) 


    ];
    [self.tableView setScrollEnabled:NO];
    i++;




表格视图单元格确实可以翻译,但我无法实现“半重叠效果”,(我猜苹果使表格视图单元格相对于彼此线性布局)。有没有办法覆盖它并使它们在屏幕底部半重叠?

【问题讨论】:

【参考方案1】:

如果您希望它与下面的单元格重叠,您可以向单元格的 contentView 添加一个子视图,该子视图在单元格底部下方延伸。请务必将 contentView 的 clipsToBounds 属性设置为 NO(默认为 YES)。

【讨论】:

我不确定这是否可行。我需要他们在某个点“停止”,即。假设您可以看到其中的 6 个,我需要底部的一个在其下方后停在底部的一个。我认为你说的可能有效,但有没有办法让他们独立行动? 不起作用,ui表视图的子视图是uitableviewcellwrapper,由于某种原因我无法访问实际单元格并对其进行操作。

以上是关于将 UITableView 单元堆叠在彼此之上的主要内容,如果未能解决你的问题,请参考以下文章

网格项目不在彼此旁边 Material UI

UITableView 在彼此之上添加重复的标签

UITableView 中的自定义单元格重叠

我想使用 SnapKit 将顶部 UIView 放置在 UITableView 之上

如何使多个视图具有相同的宽度?

UITableView 在 IOS 7 与 IOS 6 中的行为不同