Frage

Ich habe einen Weg, um die Zurück-Taste durch die Navigationssteuerung verwendet zu verstecken. Es wird von der vorherige Steuerung gesetzt, nicht derjenige, der die aktuelle Ansicht der Verwaltung, und das macht es schwierig zu bekommen. Ich brauchte diese im Bearbeitungsmodus zu tun, damit ich vom Bildschirm des Benutzer navigiert weg verhindern könnte.

if(self.editing) {
    // Get rid of the back button   
    UIView *emptyView = [[UIView alloc] init];;
    UIBarButtonItem *emptyButton = [[[UIBarButtonItem alloc] initWithCustomView:emptyView] autorelease];
    [self.navigationItem setLeftBarButtonItem:emptyButton animated:YES];
} else {
    // Restore the back button
    [self.navigationItem setLeftBarButtonItem:nil animated:YES];        
}

Gibt es einen besseren Weg, dies zu tun?

War es hilfreich?

Lösung

Mit dieser Taste verbergen zurück

[self.navigationItem setHidesBackButton:YES]

Verwenden Sie diese Taste, um zu zeigen, zurück

[self.navigationItem setHidesBackButton:NO]

Andere Tipps

Hier ist die Methode, die ich in meinen Ansicht-Controller verwenden, um zu zeigen, und die Zurück-Taste ausgeblendet, wenn die Bearbeitung aktiviert und deaktiviert ist:

- (void)setEditing:(BOOL)editing animated:(BOOL)animated
{
    if (editing) {
        // Disable the back button
        [self.navigationItem setHidesBackButton:YES animated:YES];
    }
    else {
        // Enable the back button
        [self.navigationItem setHidesBackButton:NO animated:YES];
    }

    [super setEditing:editing animated:animated];
}

Machen Sie eine Steckdose mit starkem (nicht schwach als Standard) der Stange Taste aus dem Storyboard zu Ihren View-Controller. Der Zweck ist nicht die Referenz zu verlieren, wenn Sie die Links / Rechts-Bar-Taste auf Null gesetzt.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top