将UITableView单元堆叠在彼此之上

时间:2014-10-09 18:37:57

标签: ios objective-c uitableview tableview cell

我正在创建一个应用程序,我将列表视图用作屏幕。当我点击该项目时,我希望这些项目能够相互堆叠在一起。 (想想金属襟翼),enter image description here

    - (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 个答案:

答案 0 :(得分:0)

如果您希望子视图与下面的单元格重叠,则可以将子视图添加到单元格底部下方延伸的单元格内容视图中。请务必将contentView的clipsToBounds属性设置为NO(默认情况下为YES)。