请参阅下面的代码。当frame在动画中“改变”时,改变的是实际cell的坐标系,而不是整个view的坐标。所以 (0,0) 是单元格的原点而不是整个视图。单元格位于屏幕中间(GMGridView 的一部分)。
我要完成的工作:我需要在整个视图中获取单元格的绝对位置,然后从那里动画一个帧更改(通过翻转调整大小),它也在整个视图的坐标系中。然后改回单元格的“旧”绝对框架(按下按钮后)。我通过工作正常的按钮和委托处理了逻辑。唯一不起作用的是框架。
有任何想法吗?
我试图获得绝对的 frameInMainWindow 但无法正确。并试图玩clipToBounds,但没有运气。还有一堆没有帮助的其他东西。
有没有人知道如何完成上述任务?
任何帮助将不胜感激。
cell.contentView.contentMode = UIViewContentModeRedraw;
[UIView transitionWithView:cell.contentView duration:2
options:UIViewAnimationOptionTransitionFlipFromRight
animations: ^{
cell.contentView.frame = CGRectMake(0,
0,
myFullView.frame.size.width,
myFullView.frame.size.height);
[cell.contentView addSubview:myFullView];
[gmGridView bringSubviewToFront:cell];}
completion: ^(BOOL finished) { }];