我需要呈现,然后以模态关闭UITableView。它应该从顶部到按钮进行动画处理。但是它不能覆盖整个屏幕,它会从导航栏下面滑入并停止,直到到达标签栏。
所以我不能使用presentViewController:animated:completion:
作为其视图控制器。
我需要将其作为视图层次结构的一部分进行操作。问题是,当该表视图不可见时应该在哪里。我要从哪里制作动画?
最佳答案
您可以将UITableView放在UIView中并使用animateWithDuration。例如(使用一些组合尺寸):
[subMenuView setFrame:CGRectMake(5,-400, 310, 400)];
[UIView animateWithDuration:0.8f
delay:0.0f
options:UIViewAnimationOptionTransitionCurlDown
animations:^{
[subMenuView setFrame:CGRectMake(5,0,310,400)];
}
completion:^ (BOOL finished)
{
if (finished)
{
//animation has finished, you can do something here, even another nested animation
}
}];
如果要再次将其向上滑动,请执行相反的操作...