iOS-Segment wurde zweimal ausgeführt

7

Ich habe eine Tabellenansicht mit verschiedenen Typen von Tabellenansichtszellen darin. In einer der Zellen befinden sich zwei Schaltflächen, die beim Drücken einen View-Controller laden. Ich verwende die folgende Funktion, um die Taste zu drücken:

%Vor%

Mein ButtonSegue soll einen neuen View-Controller schieben. Irgendwie, anstatt einmal zu drücken, scheint es zweimal zu drücken, deshalb bekomme ich folgende Warnung:

%Vor%

In meinem Fall führt dies zu einem Absturz, da es ein Ereignis gibt, bei dem ich möchte, dass die App den View-Controller sofort aufruft, damit er in meine Tabellenansicht zurückkehrt. Ich benutze dafür eine Alertview und behandle das Ereignis mit folgendem:

%Vor%

Es mag interessant sein zu bemerken, dass ich einen anderen Übergang von meiner "normalen" Tabellenansichtszelle habe, und in diesem Fall verwende ich die prepareForSegue: Methode

%Vor%

In diesem Fall wird der View-Controller perfekt gedrückt, und wenn nötig, springt er sogar sofort. Ich teste dies auf iOS7 und Xcode 5. Ich habe noch nie ein Problem wie dieses zuvor, jede Hilfe würde sehr geschätzt werden.

    
József Vesza 27.11.2013, 01:10
quelle

4 Antworten

16

Antwort von kann poyrazoğlu :

  

Sind Sie sicher, dass Sie die Aktionen in der Benutzeroberfläche richtig verdrahtet haben?   Erbauer? vielleicht hast du das Ereignis verdrahtet, zum Beispiel, um es innen zu tun   und berühre das Innere, anstatt es nur innen zu berühren. oder vielleicht hast du   hat auch den Übergang von beiden Codes und erneut im Interface Builder zugewiesen.   Hast du sie überprüft? Es ist ein häufiger Fehler. -

Ich habe die Touch-Up-Aktionen für jede Schaltfläche sowohl dem Storyboard als auch den Datenquellen-Methoden meiner Tabellenansicht zugewiesen.

Danke für Ihre schnelle Hilfe kann poyrazoğlu !!

    
József Vesza 27.11.2013, 01:25
quelle
13

Vielleicht möchten Sie Ihre Segmente mit View-Controllern anstelle von UIButtons verbinden!

Sie sollten die Segmente wahrscheinlich mit einer Taste wie folgt verdrahten:

Aber Sie sollten sie stattdessen mit den View-Controllern verbinden:

    
Mário Carvalho 07.06.2015 00:06
quelle
5

Für Swift 3, xcode und ios 9+, was ich verwende: Stellen Sie sicher, dass Sie von Ihren UIViewControllern und nicht von Schaltflächen oder anderen Schnittstellen Segmente ziehen.

Ich hatte das selbe Problem und einfach den Start des Segments vom UIController zu ändern, anstatt den Knopf zu entfernen.

    
Samman Bikram Thapa 07.03.2017 01:53
quelle
1

Ich bekomme dieses Problem immer, wenn ich meine Tasten direkt an den Zielansicht-Controller angeschlossen habe. Sie müssen sicherstellen, dass Sie zuerst das alte Segment löschen, das Sie erstellt haben, dann klicken Sie auf den aktuellen View-Controller (woher Sie kommen) und klicken Sie mit CTRL + auf den Ziel-Controller.

Das sollte es beheben:)

    
Matthew Zourelias 24.02.2017 15:35
quelle

Tags und Links