0

我很好奇如何实现以下应用动画:在此处输入图像描述

单击Alcides后,应用程序将逐渐在右侧显示一个新视图,左侧表格宽度将是原来的1/2。
在此处输入图像描述

如果我想实现它,我该怎么做?我应该使用什么数据结构和动画?

4

1 回答 1

2

大多数自定义动画的答案是考虑你想做什么并去做。陈词滥调但真实。

  1. 以动画速度 X 将 tableview 的宽度减半

  2. 以动画速度 X 从右侧移动 RH 详细信息表

您需要将场景的 ViewController 作为这对表的容器。但是表视图可能有自己的视图控制器,容器管理器应该保持强引用。

ManagerViewController -> UIView -> PeopleTableView -> PeopleTableViewController
                                -> DetailTableView -> DetailTableViewController

所以在代码中...

detailTableView.frame = Frame_with_x_aligned_to_RH_edge_of_screen;

[UIView animateWithDuration:X 
    animations:^{
       peopleTableView.frame = Frame_with_half_its_fully_expanded_width;
       detailTableView.frame = Frame_with_x_aligned_to_edge_of_peopleTable;
} 
    completion:^{ //stuff to do at the end of the animation  
}];
于 2012-07-22T09:42:02.863 回答