2016-07-05 13 views
1

Ich bin sehr neu in Swift und ich lerne gerade UICollectionView. Ich habe meine UITableView in UICollectionView konvertiert. Die Navigationsleiste in der UITableView wird oben korrekt angezeigt, aber für die UICollectionView konnte ich sie nicht außerhalb der Zelle ziehen, um direkt unter "Collection View" zu sein.Wie verschiebe ich die Navigationsleiste außerhalb der UICollectionViewCell?

Ich kann es auf den First Responder ziehen oder beenden, aber es wäre außerhalb der Ansicht. Wenn ich versuche, die Navigationsleiste der Tabellenansicht zu ziehen, kann ich sie nicht mehr an die aktuelle Position ziehen und erlaube mir nur, in die Zelle zu ziehen.

Ich weiß nicht, was ich hier falsch gemacht habe. Ich benutze "Show", um die Ansicht zu präsentieren, und das habe ich auch früher für mein UITableView verwendet. Bitte lassen Sie mich wissen, wenn ich andere Details zur Verfügung stellen muss. Vielen Dank!

enter image description here

+0

Eigentlich scheint es, dass die Navigationsleiste in der Tabellenansicht eingerichtet ist. (Zwischen 'TableView' und' TableViewCell'). In der Sammlungsansicht können Sie zuerst die 'Navigationsleiste' in der Zelle entfernen. Versuchen Sie dann, ein "Navigationselement" anstelle einer "Navigationsleiste" auf den Controller zu ziehen. – tsnkff

+0

Ich habe die 'NavigationBar' entfernt und' NavigationItem' hinzugefügt, aber ich kann sie nur dorthin ziehen, wo 'NavigationBar' gezogen werden kann. – Vinz

Antwort

1

Ich denke, man könnte haben:

  • diese Bar Navigation entfernen
  • wählen Sie Ihre CollectionViewController
  • zu Editor gehen => Einbetten in => Navigation Controller

Dies sollte Ihren Sammlung View-Controller in einbetten Navigation Controller und stellen Sie die Navigationsleiste korrekt ein.

Hoffentlich hilft das

+0

Das Einbetten in den 'NavigationController' funktionierte, aber es erzeugt ein Problem, weil ich eine 'prepareForSegue'-Funktion habe, die' CollectionView' als Ziel hat. Oder gibt es eine Möglichkeit, beim Navigieren über den NavigationController zu springen? – Vinz

+0

Sicher kannst du! Wenn die Ziel-VC in einen Navigationscontroller eingebettet werden soll, gehen Sie genauso vor. Wenn nicht (Beispiel: ein Modal-Popover), können Sie einfach ein Push-Segment setzen – H4Hugo

+0

Das ist perfekt! Vielen Dank. Es gelang mir, alle Übergänge zu korrigieren, und ich fragte mich, ob es eine Möglichkeit gibt, die Übergangsanimation in "Herunterrutschen" zu ändern, weil sie nach oben gleitet, wenn ich sie modal präsentiere, aber es keine Option gibt, sie nach unten zu schieben, um zum Root-Controller zurückzukehren. Zu guter Letzt, warum brauche ich einen Navigationscontroller für diese Sammlungsansicht, wenn ich ihn beim Erstellen des Tabellenansicht-Controllers nicht benötigt habe? Obwohl der Table-View-Controller auch so gedreht wurde. – Vinz

Verwandte Themen