2016-07-25 7 views
1

Ich versuche derzeit, eine benutzerdefinierte Suche nach einer iOS-App zu entwickeln.Zurück Knopfposition auf Navigationscontroller

Ich habe es geschafft richtig die Suchsteuerung erscheinen und die Suchleiste zu bekommen erscheinen, obwohl mein einziges Problem ist, dass ich die Zurück-Taste müssen auf der rechten Seite der Navigationsleiste angezeigt wird und nicht links, unten

siehe

(Wie Sie sehen können die zurück-Taste auf der linken Seite ist, aber ich muss es auf der rechten Seite sein) http://imgur.com/qLPoIfG

Hier ist mein Code:

import UIKit 

Klasse SearchTop10Controller: UITableVie wController, UISearchResultsUpdating {

override func viewDidLoad() { 
    super.viewDidLoad() 

    let searchController = UISearchController(searchResultsController: self); 

    self.definesPresentationContext = true; 
    searchController.searchResultsUpdater = self; 
    //  searchController.hidesNavigationBarDuringPresentation = true; 

    searchController.dimsBackgroundDuringPresentation = false; 
    searchController.searchBar.sizeToFit(); 
    self.navigationItem.titleView = searchController.searchBar; 
    self.tableView.tableHeaderView = searchController.searchBar; 
} 

override func viewDidAppear(animated: Bool) { 


} 

func updateSearchResultsForSearchController(searchController: UISearchController) { 
    //do whatever with searchController here. 
} 

override func didReceiveMemoryWarning() { 
    super.didReceiveMemoryWarning() 
    // Dispose of any resources that can be recreated. 
} 
+0

Bearbeiten Sie den Code Ihren festen Code enthalten (ohne das Problem). Markieren Sie die Antwort, die Sie zur Lösung geführt hat, indem Sie auf das Häkchen daneben klicken. – WMios

+0

Ich werde sagen, wenn dies etwas ist, das Sie in den Laden bekommen möchten, ist Apple normalerweise ziemlich dagegen, gegen den Standard zu gehen (d. H. Es ist auf der rechten Seite statt auf der linken Seite). – Dallas

Antwort

2

Sie können eine Zurück-Taste auf der rechten Seite bar Artikel wie folgt hinzufügen:

let backButton : UIBarButtonItem = UIBarButtonItem(image: UIImage(named: "back_icon"), style: UIBarButtonItemStyle.Plain, target: self, action: #selector(back)) 
self.navigationItem.rightBarButtonItem = backButton 

Wo back_icon ist ein Bild, das Sie verwenden, und back wird die folgende Funktion:

func back() { 
    self.navigationController?.popViewControllerAnimated(true) 
} 

Um die linke Bar Artikel zu verstecken:

self.navigationItem.leftBarButtonItem = nil 

oder:

self.navigationItem.hidesBackButton = true 
+0

Vielen Dank für Ihre Antwort, wie würde ich auch den linken Gegenstand entfernen? –

+0

@Deucebigalow siehe oben bearbeiten. Sie setzen es einfach auf "Null". – WMios

+0

@Deucebigalow, lassen Sie mich wissen, ob das funktioniert. – WMios

Verwandte Themen