UILabel: Mit der userInteractionEnabled Methode auf einem Etikett
Frage ich mich, ob jemand verwendet hat, die userInteractionEnabled Methode auf ein UILabel, dass die label zu handeln, wie eine Taste (oder auch nur Feuer aus einer Methode). Jegliche Hilfe würde sehr geschätzt werden. Prost!
Update (4/30/09 @1:07 Uhr) Klärung: ich habe einen standard-InfoButton, und weiter will ich setzen Sie ein label mit dem text "Einstellungen", und ich möchte die label Funktion wie die Taste (die kippt über eine Einstellungen-Bildschirm. Also, im Grunde brauche ich zu binden, das bereits definiert showSettinsView "infoLabel" - label, ein Benutzer klickt auf den infoButton oder infoLabel und die Methode löst.
Den infoButton ist bereits in Arbeit und wird mit einem IBAction zum auslösen der Methode. Ich würde gerne wissen, wie Draht, das label zu implementieren, die gleiche Methode. Das ist alles. Prost!
Danke, ich aktualisiert die Frage. Ich hoffe, dass es hilft.
InformationsquelleAutor Kevin Bomberry | 2009-04-30
Du musst angemeldet sein, um einen Kommentar abzugeben.
userInteractionEnabled
ist nicht eine Methode, sondern eine Eigenschaft. Aber ich denke, Sie werden wollen, setzen Sie diese aufYES
zu ermöglichen, Veranstaltungen, bis hin zu denUIView
superview.Dem, was Sie vielleicht tun möchten, überschreiben Sie die
touchesBegan:withEvent:
Methode derUIView
enthältUIButton
undUILabel
Untersichten.Innerhalb dieser Methode zu testen, ob eine der
UITouch
berührt, fallen innerhalb der Grenzen desUILabel
.Ist, hat die
CGPoint
element[touch locationInView]
schneiden, mit demCGRect
element[infoLabel bounds]
? Schauen Sie in die FunktionCGRectContainsPoint
um diesen test durchzuführen.Wenn dem so ist, dann Feuer aus einem
NSNotification
dass Anrufe auf die gleicheIBAction
Auswahl als dieUIButton
.InformationsquelleAutor Alex Reynolds
Andere Lösung wäre die Verwendung eines
UIButton
mit seinem Typ "Benutzerdefiniert", statt einerUILabel
. Auf diese Weise Ihre zweite Schaltfläche sieht wie einUILabel
, und Sie können konfigurieren, dass es zum auslösen dershowSettingsView
Methode.InformationsquelleAutor MonsieurDart
Stimme ich mit Alex Apr 30, '09 und mein Vorschlag ist nur eine Ergänzung zu es, wenn Sie nicht wollen, zu gehen mit einem UIButton. Die Art, wie ich es gelöst wurde durch die Schaffung einer UILabel durch
dann können Sie überschreiben die berührt* Methoden wie touchesBegan, touchesEnded mit so etwas wie
Ich Frage mich, warum ich einen ähnlichen code wie du, aber bei mir ist das nicht brennen touchesBegan
InformationsquelleAutor sunilg