我在它的所有区域都有一个UIViewController
控股UITableView
公司。在条形按钮上单击我正在尝试缩小并移动和缩小UITableView
以腾出空间,UIView
以便从屏幕顶部向下移动。
我附上你的项目
我设法很好地移动了红色视图,但是在移动和调整 UITableView 大小时遇到了问题。
这是我的导致问题的动画。
-(void)extendTableView
{
if (searchPanel) {
objectsTableView.frame = CGRectMake(objectsTableView.frame.origin.x, 0, objectsTableView.frame.size.width, 100);
CATransition *animation = [CATransition animation];
[animation setDuration:0.5];
[animation setType:kCATransitionPush];
[animation setSubtype:kCATransitionFromTop];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
[animation setDelegate: self];
[animation setValue:ANIMATION_EXTEND_TABLE_VIEW forKey:KEY_ANIMATION];
[objectsTableView.layer addAnimation:animation forKey:ANIMATION_EXTEND_TABLE_VIEW];
}
-(void)shrinkTableView
{
if (searchPanel) {
objectsTableView.frame = CGRectMake(objectsTableView.frame.origin.x, 100, objectsTableView.frame.size.width, 100);
CATransition *animation = [CATransition animation];
[animation setDuration:0.5];
[animation setType:kCATransitionPush];
[animation setSubtype:kCATransitionFromBottom];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];
[animation setDelegate: self];
[animation setValue:ANIMATION_SHRINK_TABLE_VIEW forKey:KEY_ANIMATION];
[objectsTableView.layer addAnimation:animation forKey:ANIMATION_SHRINK_TABLE_VIEW];
}
}
实现这一目标的正确方法是什么?