2016-08-01 47 views
3

Ich verwende eine UIPageViewController verbunden mit einer UINavigationController, um zwei Seiten, eine Benutzer-Tabelle und eine Chat-Tabelle anzuzeigen.Wie werden Schaltflächen in der Navigationsleiste in UIPageViewController angezeigt?

Ich versuche folgendes zu implementieren:

Zwei Tasten Users und Chat auf Klopfen, das die entsprechende View-Controller angezeigt. Ich möchte diese Schaltflächen in der Navigationsleiste.

Hier ist der Code, den ich in der Seitenansicht Controller-Klasse geschrieben haben

viewDidLoad() 

    let storyBoard = UIStoryboard(name: "Main", bundle: nil) 
    let vc1 = storyBoard.instantiateViewControllerWithIdentifier("users") 
    let vc2 = storyBoard.instantiateViewControllerWithIdentifier("chat") 

    vcArray = [vc1, vc2] 

    self.setViewControllers([vc1], direction: .Forward, animated: true, completion: nil) 

    let button1 = UIButton(frame: CGRectMake(0, 30, self.view.frame.width/2, 30)) 
    let button2 = UIButton(frame: CGRectMake(self.view.frame.width/2+1, 30, self.view.frame.width/2, 30)) 
    button1.setTitle("Users", forState: .Normal) 
    button2.setTitle("Chat", forState: .Normal) 
    self.navigationController?.navigationBar.topItem?.titleView?.addSubview(button1) 

    self.navigationController?.navigationBar.topItem?.titleView?.addSubview(button2) 

Leider keine der Schaltflächen in der Navigationsleiste angezeigt wird. Tatsächlich kann ich der Navigationsleiste nicht einmal einen Titel zuweisen. Wie kann ich das beheben?

Dank

Antwort

0

Sie können mehrere Taste auf der rechten Seite der Navigationsleiste wie folgt

let editImage = UIImage(named: "First")! 
let searchImage = UIImage(named: "Second")! 

let editButton = UIBarButtonItem(image: editImage, style: .Plain, target: self, action: "didTapEditButton:") 
let searchButton = UIBarButtonItem(image: searchImage, style: .Plain, target: self, action: "didTapSearchButton:") 

navigationItem.rightBarButtonItems = [editButton, searchButton] 

oder

self.navigationController?.navigationBar?.navigationItem.rightBarButtonItems = [editButton, searchButton] 

hinzufügen Wenn Sie es in der Mitte aussehen wollen In der Navigationsleiste können Sie Bild mit der entsprechenden Breite verwenden, so dass es in Richtung der Mitte skaliert.

+0

Vielen Dank für Ihre Antwort. Leider löst dies das Problem nicht. Ich bin für integrierte Funktionen zu RKSwipeViewController gewechselt –