Navigationsleiste titleView Ausrichtung

Möchte ich meine navigation bar, um zwei Dinge in der Mitte. Sie werden die Liste der Namen, und der andere wird den Namen der Benutzer. Benutzer-Namen unter eine Liste mit Namen. Was ich bisher getan habe ist, ich habe zwei label und eine superview Programm und legen Sie die titleView von navigationItem.

override func viewDidLoad() {
        super.viewDidLoad()
        var rectForView = CGRect(x: 0, y: 0, width: 190, height: 176)
        var viewForTitle = UIView(frame: rectForView)

        var rectForNameLabel = CGRect(x: 0, y: 63, width: 190, height: 30)
        var listNameLabel = UILabel(frame: rectForNameLabel)
        listNameLabel.text = "Name of the List...."
        listNameLabel.textAlignment = NSTextAlignment.Center
        listNameLabel.font = UIFont(name: "HelveticaNeue-Bold", size: 15)

        var rectForListLabel = CGRect(x: 0, y: 93, width: 190, height: 20)
        var usersOfListLabel = UILabel(frame: rectForListLabel)
        usersOfListLabel.text = "some Users...."
        usersOfListLabel.textAlignment = NSTextAlignment.Center
        usersOfListLabel.font = UIFont(name: "HelveticaNeue", size: 10)

        viewForTitle.addSubview(listNameLabel)
        viewForTitle.addSubview(usersOfListLabel)


        self.navigationItem.titleView = viewForTitle

Die Sache ist die, ich bin Kommissionierung Breite zufällig, das führt zu alignment-Probleme in verschiedenen Geräten. Wie Sie das erreichen, Mitte, Ausrichtung in meinem Fall?
Navigationsleiste titleView Ausrichtung

Navigationsleiste titleView Ausrichtung

  • Haben Sie versucht, die Einstellung einer NSLayoutConstraint für CenterX?
  • Ich nicht. Aber ich habe versucht zu setzen "textForViews" center x-variable "views" (das kommt mit controller) center x-variable
  • Durch die Art und Weise, wie add constraint programmatisch?
  • versucht, dass man in viewDidload : var constX = NSLayoutConstraint(Artikelnummer: viewForTitle, Attribut: NSLayoutAttribute.CenterX, relatedBy: NSLayoutRelation.Gleich, toItem: Ansicht, Attribut: NSLayoutAttribute.CenterX, Multiplikator: 1, Konstante: 0) viewForTitle.addConstraint(constX) ........ Aber hat nicht funktioniert. Das Programm stürzte ab. Es sagt, "Die view-Hierarchie ist nicht bereit für die Einschränkung:
  • aktiviert die Einschränkungen nach schriftlicher Bestätigung Hinzugefügt, wie die Untersicht?
  • Ich denke, so. Sie wurden Hinzugefügt, wie die letzten Zeilen in viewDidLoad. Übrigens, wenn Sie sich mit der Frage, werde ich glücklich sein. Ich wirklich wollen, um loszuwerden, dieses problem...

InformationsquelleAutor Salihcyilmaz | 2015-04-26
Schreibe einen Kommentar