UIBarButtonItem, das mit initWithCustomView erstellt wurde, löst keine Aktion aus

8

Ich aktualisiere alten Code und um mehr Platz in einer Symbolleiste zu schaffen, konvertiere ich die Buttons von Test zu Bildern. Ein Beispiel für den neuen und alten Code in loadView ist dies:

%Vor%

Mein neuer Code wurde von Kann keine Aktion für UIBarButtonItem festlegen und ich ' Ich bin ziemlich sicher, dass ich nicht ihren Fehler mache, da mein Textknopf gerade gut funktioniert.

showSetupView () befindet sich in meiner AppController.m-Datei und der Setup-Bildschirm wird angezeigt und verschwindet, wenn die Schaltfläche gedrückt wird.

toggleKeyboard (), OTOH, befindet sich in derselben Datei wie die Routine loadView () und besteht derzeit aus diesem Code:

%Vor%

Es ist unnötig zu sagen, dass ich die NSLog-Nachricht nie sehe, obwohl ich die Animation mit dem Knopfdruck sehe. Und eine letzte Beobachtung, zufällig gemacht. Ändern Sie den SetAction-Selektor zu diesem:

%Vor%

wird sauber kompiliert und gibt möglicherweise an, dass mein Routinename aus irgendeinem Grund ignoriert wird.

Hat jemand Ideen? Danke.

    
samwyse 22.07.2012, 11:15
quelle

2 Antworten

16

Ich habe die Antwort gefunden! In Schaltflächenaktion reagiert nicht iphone , es heißt, dass die Aktion und das Ziel gesetzt werden müssen auf dem UIButton , nicht auf dem UIBarButtonItem . Ich weiß nicht, ob das mit der neuesten Version von Xcode neu ist, aber ich denke, es ist so, da andere Fragen (wie die, die ich oben erwähne) eine andere Technik verwenden. Hier ist mein neuer Code:

%Vor%     
samwyse 23.07.2012, 02:56
quelle
0

Hast du es versucht

?

-(void)toggleKeyboard

und

[toggleKeyboardItem setAction:@selector(toggleKeyboard)]; ohne :

und es hat einen Unterschied gemacht? Ist die Methode in der Interface-Datei deklariert?

    
Natan R. 22.07.2012 12:02
quelle

Tags und Links