我有一个 UIView mainView,里面有 2 行单元格。每个单元格都是一个 UIView,它使用以下方法添加到 mainView:
[mainView addSubiew:cell];
当点击第 2 行的一个单元格时,我将所有第 2 行的单元格移动到第 1 行:
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:0.25];
[UIView setAnimationDelay:0.0];
[UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];
//change frame.origin.y of each row 2 cell to that of the cell right above it
[UIView commitAnimations];
上面的工作非常好。但是,在此之后,我正在尝试调整 mainView 的大小:
CGRect newFrame = mainView.frame;
newFrame.size.height -= cellHeight; //cellHeight is the size of a cell
mainView.frame = newFrame
现在,上面的动画和 mainView 的大小调整都不起作用。
我把上面所有的动画代码都注释掉了,发现自己调整mainView的大小也不起作用。
mainView 设置如下:
mainView.autoresizingMask = UIViewAutoresizingFlexibleTopMargin |
UIViewAutoresizingFlexibleWidth;
mainView.clipsToBounds = YES;
不知道发生了什么:(