0

hier ist Lebenslauf meiner App:Wie programm Tabbar Element tippen (nicht selectedIndex)

  • I Tab-Leiste haben. Wenn Benutzer auf den Tabbar-Eintrag tippen
  • entsprechenden View-Controller wird von "Folie-zu-Seite" Animation (wie in iP Homescreen) präsentiert.

Der Code ist in der Methode tabBarController(tabBarController: UITabBarController, shouldSelectViewController viewController: UIViewController) -> Bool.

  • Ich habe Alarm. Wenn der Nutzer auf die Schaltfläche klickt, möchte ich ihn auf die entsprechende Registerkarte verweisen. Aber wenn ich self.selectedIndex = # verwende, wird VC angezeigt, aber ohne Animation. Gibt es eine Möglichkeit, dieselbe Aktion wie das Tippen auf einen Gegenstand zu erreichen? Danke
+1

Warum tun Sie nicht einfach tabBarController.selectedIndex = 1? –

+0

tue ich, aber es nicht triger erwähnte Methode, die Animation enthält. Es zeigt View Controller ich brauche, aber ohne Animation – Lachtan

Antwort

6

Programmgesteuertes Auswählen der Registerkarte löst keine Delegatmethoden aus. Dies gilt für jede Kontrolle. Da Sie sich entschieden haben, etwas zu tun, wissen Sie bereits, dass Sie es getan haben. Sie brauchen keine Delegate-Methode, um es Ihnen zu sagen. Dies ist mit Absicht und es ist eine gute Sache.

Es gibt eine einfache Lösung. Setzen Sie den Animationscode innerhalb der Delegate-Methode in eine eigene Methode. Rufen Sie dann diese Methode von der Delegate-Methode auf. Jetzt können Sie diese neue Methode auch aufrufen, wenn Sie self.selectedIndex = # aufrufen.

+0

Richtig, ich brauchte nur ein bisschen mehr Arbeit um. Aber ich habe im Grunde genommen, was du gesagt hast. Vielen Dank:) – Lachtan

Verwandte Themen