Kürzlich stand ich vor dem gleichen Problem und ich habe es gelöst (danke an Erik B., deine Antwort hat mich inspiriert! leider kann ich deine Antwort noch nicht bewerten)
Ich glaube, meine rechte Leistenschaltfläche kann nicht verschwinden, weil ich sie in viewWillAppear
Funktion, und zwar bei dieser Funktion, self
nicht auf den Strom bezogen ist UIViewController
.
Das hat bei mir funktioniert, anstatt die Schaltfläche in viewWillAppear
Ich habe es in navigationController:willShowViewController:animated:
Funktion bei vorherige UIViewController
.
Ich rufe zum Beispiel SecondViewController
von FirstViewController
und ich möchte die Schaltfläche der rechten Leiste in SecondViewController
, setzen Sie dies ein FirstViewController.m
:
- (void)navigationController:(UINavigationController *)navigationController willShowViewController:(UIViewController *)viewController animated:(BOOL)animated {
if ([viewController isKindOfClass:[SecondViewController class]]) {
[viewController.navigationItem setRightBarButtonItem:nil];
}
}