1

我需要以模态方式呈现然后关闭 UITableView。它应该从顶部到按钮进行动画处理。但它不应该覆盖整个屏幕,它会从导航栏下方滑入并在到达标签栏之前停止。

所以我不能使用presentViewController:animated:completion:它的视图控制器。我需要将其作为视图层次结构的一部分进行操作。问题是,当这个表视图不可见时,它应该在哪里。我将从哪里制作动画?

4

1 回答 1

1

您可以将 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
                     }
                 }];

如果你想然后将它向上滑动,请执行相反的操作...

于 2012-10-03T13:57:47.920 回答