2

我有一个uitableview内部,uiview它在导航视图中呈现(所以它有一个导航菜单)。在导航菜单下,我有一个 uitoolbar 在视图加载时出现,在从导航堆栈中弹出加载时消失。

我遇到的问题是,当我使用从右到左的正常动画转换将此视图动画到堆栈上时,tableview 不会这样做,它只是在视图完成滑入视图之前快速出现。然后,当您选择后退按钮并且视图开始从左到右进行动画处理时,它会在动画结束之前再次消失。

我想知道如何让这个工具栏与视图的其余部分一起动画,从右到左,从左到右等,而不是异常地出现在滑动效果上。

这就是我目前调用和关闭工具栏的方式。

- (void) viewWillAppear:(BOOL)animated 
{
    [self.navigationController setToolbarHidden:NO animated:NO];
    [self.navigationController.toolbar setFrame:CGRectMake(0, 60, 320, 30)];
    self.navigationController.toolbar.tintColor = [UIColor darkGrayColor];

    [SeriesTableView setFrame:CGRectMake(0, 30, self.view.frame.size.width, self.view.frame.size.height)];


    [super viewWillAppear:animated];
}

- (void)viewWillDisappear:(BOOL)animated
{
    [self.navigationController setToolbarHidden:YES animated:NO];

    [super viewWillDisappear:animated];
}

这几乎是标准的做事方式。任何帮助将不胜感激。

4

1 回答 1

2

导航控制器的工具栏属性已经在屏幕上,但从视图中隐藏。如果您希望工具栏使用特定视图打开和关闭动画,请将工具栏添加到该视图。然后工具栏将作为视图的一部分打开和关闭动画。

于 2012-05-21T00:46:59.517 回答