在我的 UIViewController viewDidLoad 我有:
myButton = [UIButton buttonWithType:UIButtonTypeRoundedRect];
...
myButton.frame = CGRectMake(0, 2, 40, 40);
[self.navigationController.navigationBar addSubview:myButton];
按钮显示就好了。不,我将另一个视图控制器推入堆栈:
[self.navigationController pushViewController:vc animated:YES];
当然 Button 仍在显示,所以我尝试将其隐藏在 viewWillDisappear 中并将其显示在 viewWillAppear 中,但过渡看起来不正确。即使将超级调用的顺序与隐藏调用交换也不正确。
- (void)viewWillDisappear:(BOOL)animated {
[super viewWillDisappear:animated];
myButton.hidden = YES;
}
- (void)viewWillAppear:(BOOL)animated {
myButton.hidden = NO;
[super viewWillAppear:animated];
}
我该怎么做才能让这个过渡看起来正确?谢谢你。