我想更改调用方法setToolbarHidden 时在导航控制器工具栏上发生的动画。默认情况下,当您将"隐藏"设置为"是"并将动画设置为"是"时,工具栏只会从屏幕上消失。我希望它从左向右滑出屏幕(就像您点击导航栏上的后退按钮并且上一个视图控制器在屏幕上重新声明自己一样)。这可能吗?
这不会是完美的,但像这样的事情可能是可能的:
self.navigationController.toolbarHidden = NO;
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0];
[UIView setAnimationDelegate:self];
[UIView setAnimationDidStopSelector:@selector(animationFinished:finished:context:)];
CGRect frame = self.navigationController.toolbar.frame;
frame.origin.x = -1*frame.size.width;
self.navigationController.toolbar.frame = frame;
[UIView commitAnimations];
- (void)animationFinished:(NSString *)animationID finished:(BOOL)finished context:(void *)context {
self.navigationController.toolbarHidden = YES;
}
我提交了一份错误报告,不幸的是,在 Apple 自己添加该功能之前,似乎没有办法做到这一点。