在segue之后没有隐藏工具栏

时间:2014-02-09 23:39:11

标签: ios iphone uitoolbar uistoryboardsegue

我在使用segue离开屏幕时隐藏工具栏时遇到了麻烦。

详细信息:App有几十个屏幕,所有屏幕都属于同一个导航控制器。一些屏幕有工具栏。对于-(void)viewDidLoad [self.navigationController setToolbarHidden:NO animated:NO]; 中的几个屏幕,我使用

-(void)viewWillDisappear:(BOOL)animated:

并在[self.navigationController setToolbarHidden:YES animated:YES];

[owner.navigationController popToRootViewControllerAnimated:NO];
[self performSegueWithIdentifier:SEGUE_NAME sender:self];

因此工具栏仅在必要的屏幕上可见,而需要工具栏的屏幕控制可见性。当我按“后退”按钮导航时,一切正常。

当我尝试像这样使用segue导航时出现问题(转到home并转到另一个分支)。

-(void)viewWillDisappear
尽管调用隐藏工具栏的{{1}},

工具栏仍然可见。
有没有想法如何以正确的方式执行这些“ToolBarHidden”。

谢谢

PS:当然我可以在每个屏幕上隐藏工具栏,但我想避免这种不必要的操作,并且想要知道如何正确操作。

1 个答案:

答案 0 :(得分:1)

**STEP1:**

中的

controller.h

@interface ViewController : UIViewController {

    UIToolbar *bar;
}

@property (nonatomic, strong) IBOutlet UIToolbar *bar;

@end
**STEP2:**

中的

controller.m

@synthesize bar;

- (void)viewDidAppear:(BOOL)animated {

        [super viewDidAppear:animated];
        self.bar.hidden = NO;

}

- (void)viewDidDisappear:(BOOL)animated {

        [super viewDidDisappear:animated];
        self.bar.hidden = YES;
}

**STEP3:**在Intrface中连接

enter image description here

希望这对你有帮助!