这是我目前拥有的:http ://cl.ly/PIFB
以及它背后的代码:
UIView *smallView = [[_tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:recognizer.view.tag inSection:0]] contentView];
CGRect initialSize = smallView.frame;
CGRect finalSize = CGRectMake(150.0, 100.0, 660.0, 450.0);
UIView *largeView = [[UIView alloc] initWithFrame:initialSize];
[largeView setBackgroundColor:[UIColor blackColor]];
[largeView setClipsToBounds:NO];
[UIView transitionFromView:smallView toView:largeView duration:2 options:UIViewAnimationOptionTransitionFlipFromRight completion:^(BOOL finished) {
[[_tableView cellForRowAtIndexPath:[NSIndexPath indexPathForRow:recognizer.view.tag inSection:0]] contentView].frame = finalSize;
[largeView setFrame:finalSize];
[smallView removeFromSuperview];
[self addSubview:largeView];
[UIView animateWithDuration:2 animations:^{
smallView.frame = finalSize;
[largeView setFrame:finalSize];
}];
}];
基本上我有一个 UITableView 视图。当其中一个视图被点击时,我想同时缩放和翻转它,以便它在屏幕中央显示一个新的更大视图。目前它会翻转较小的视图并最终以正确的尺寸显示较大的视图,但它不会平滑过渡。
在上面的代码中 smallView 是当前点击的单元格内容视图。largeView 是最终将被开发以显示更多与被点击的单元格相关的数据的新视图。现在它由黑色视图表示。我真的希望小细胞同时生长和翻转,以便它平滑地过渡到更大的视图。
您的帮助将不胜感激。我在客观 c、可可触摸和执行动画方面的经验非常有限。
非常感谢。