动画 UITableView 调整大小
Posted
技术标签:
【中文标题】动画 UITableView 调整大小【英文标题】:Animating UITableView resize 【发布时间】:2012-04-02 10:38:36 【问题描述】:我正在使用以下代码为 UITableView
的大小调整设置动画,以便在 UITableView.isEditing 时为带有额外控件的 UIView
让路。
[UIView animateWithDuration:3 // 0.2 but slowed down to easily see difference
delay:0
options:UIViewAnimationOptionCurveEaseOut
animations:^
[self.selectControlsView setFrame:CGRectMake(0, self.tableView.frame.size.height-self.selectControlsView.frame.size.height, self.selectControlsView.frame.size.width, self.selectControlsView.frame.size.height)];
[self.tableView setFrame:CGRectMake(0, 0, self.tableView.frame.size.width, self.tableView.frame.size.height-self.selectControlsView.frame.size.height)];
completion:nil];
这很好用,只是 UITableView
的动画速度似乎比 UIView
快(即使我在 UITableViews
帧之前调整 UIViews 帧),导致在背景动画期间出现黑色闪烁。
有没有办法同时为这两个视图设置动画?
【问题讨论】:
我可以使用两个单独的动画块,并在 UITableView 动画的块上稍有延迟,但这似乎有点小技巧。欢迎任何更好的想法。 【参考方案1】:这个问题是因为控制器是 UITableViewController 的子类。我现在继承 UIViewController 并将 UITableView 添加为子视图,用于添加新视图和调整 UITableView 大小的动画现在可以按预期工作。
【讨论】:
以上是关于动画 UITableView 调整大小的主要内容,如果未能解决你的问题,请参考以下文章