Ich habe Probleme beim Übergeben von Daten aus meinem Modell an eine Sammlungsansicht. Ich habe meinen Code auf ein einfaches Projekt vereinfacht das Problem zu veranschaulichen, die hier verfügbar ist: https://github.com/routineCode/collectionViewDataProblemÜbergabe von Daten an collectionView (numberOfItemsInSection) -Funktion (Swift)
Hier wird ein Bild, das gewünschte Ergebnis und tatsächliche Ergebnis mit dem aktuellen Code zeigt: View Controller output showing Desired vs. Actual Result
Ich möchte Die Funktion collectionView (numberOfItemsInSection) gibt die Anzahl der Elemente (5) in meinem Array [data] zurück, gibt aber stattdessen den fest codierten Wert zurück (3). Durch das Debuggen wird mir klar, dass dies darauf zurückzuführen ist, dass viewController immer Null ist, wenn diese Funktion aufgerufen wird, aber ich verstehe nicht, wie ich das Problem umgehen kann. Ich verwende auch das [Daten] -Array in der collectionView (cellForItemAt) -Funktion, und das funktioniert gut, weil ViewController zum Zeitpunkt des Aufrufs der Funktion nicht null ist. Danke für jede Hilfe.
Ihr Vorschlag die Linie mb.cView.reloadData() gearbeitet hinzuzufügen. Vielen Dank. –
In Bezug auf Ihre zusätzlichen Kommentare: Ich habe nur genug Code gepostet, um das Problem zu zeigen. In meinem ursprünglichen Code gibt es einen Funktionsaufruf wie diese viewController.scrollToMenuIndex (indexPath.item) Die einzige andere Möglichkeit, wie ich einen solchen Aufruf machen kann, ist die Verwendung einer statischen Funktion, aber als ich versuchte, hatte ich Probleme, es zum Funktionieren zu bringen . Daher nahm ich Ihren Vorschlag, um schwache var ViewController in der MenuBar-Klasse zu verwenden. Danke noch einmal. –