Swift 3.0 Hinzufügen eines Rechts-Taste, um die Navigation Bar

Ich habe eine Navigationsleiste auf der Spitze eines view-Controllers. Ich bin versucht zu kontrollieren, ob eine Schaltfläche sichtbar ist, basiert auf einer Bedingung, aber ich habe Probleme beim hinzufügen der Schaltfläche. Bisher habe ich,

var addButton: UIBarButtonItem = UIBarButtonItem(title: "test", style: .done, target: self, action: #selector(addTapped))

override func viewDidLoad() {
    super.viewDidLoad()

    let boool = true
    if boool {
        self.navigationItem.rightBarButtonItem = self.addButton
    }
    else {
        self.navigationItem.rightBarButtonItem = nil
    }
}

func addTapped(sender: AnyObject) {
    print("hjxdbsdhjbv")
}

Glaube ich, ist es nicht korrekt funktioniert, denn ich habe eine Navigationsleiste die in der VC, anstelle der Verwendung eines Navigations-controller und arbeitet mit der bar dort. Ich Frage mich, ob es war ein Weg, um die Arbeit mit dieser Navigationsleiste.

Sind Sie sicher, dass self.addButton Punkte zu einer tatsächlichen UIBarButtonItem und ist nicht nil? Wie ist es eingerichtet?
Ich denke, man muss initialisieren Sie Ihre selbst.addButton, bevor
ändern Sie diese Zeile var addButton: UIBarButtonItem! für diese var addButton: UIBarButtonItem = UIBarButtonItem(title: "test", style: .done, target: self, action: #selector(self.yourselector))
Ich habe bearbeitet Sie meine Frage, um die änderungen widerzuspiegeln, aber beim laden gibt es immer noch keinen button auf der rechten Seite.

InformationsquelleAutor Kevin | 2017-07-13

Schreibe einen Kommentar