UIButton addTarget: Methode mit mehreren Übergaben möglich?

  • UIButton addTarget: Methode mit mehreren Übergaben möglich?

    Hallo zusammen,

    ich habe einen UIButton. Wenn ich den drücke, dann schreibt mit clickThumbnailButton auch ganz richtig einen Wert ins NSLog:

    Quellcode

    1. [thumbButton addTarget:self action:@selector(clickThumbnailButton:) forControlEvents:UIControlEventTouchUpInside];
    2. -(void)clickThumbnailButton:(id)sender {
    3. NSLog(@"Drück mich!");
    4. }


    Kann man clickThumbnailButton jetzt auch noch einen String mit übergeben? Also quasi so:

    Quellcode

    1. -(void)clickThumbnailButton:(id)sender targetPic:(NSString *)targetPic
    2. { NSLog(@"Drück mich! Und geh zu @%",targetPic);
    3. }


    Wie ruft der Button die Funktion richtig auf? Geht das überhaupt?

    Danke :)
  • Soweit ich weiß geht das nicht.

    Ich habe für ein ähnliches Problem aber einfach UIButton überschrieben und den spezifischen String dort als Feld angelegt und beim Anlegen des Buttons geschrieben. Über den sender-Parameter kriegst Du dann den spezifischen Button und kannst das Feld wieder auslesen.
  • danke für die schnellen Antwoten :)

    Bin noch recht firsch in der iPhone-Welt, daher komme ich leider nicht so ganz mit.
    Die Buttons stehen für Thumbnails, die ich dynamisch laden. Beim durchgehen des Array bekommt halt jeder Button folgenden Aufruf (wie gesagt)

    Quellcode

    1. [thumbButton addTarget:self action:@selector(clickThumbnailButton:) forControlEvents:UIControlEventTouchUpInside];


    Wie kann ich denn in der "clickThumbnailButton" den Button identifizieren & woher bekomme ich dann meine Info "Gehe zu diesem großen Pic"? Ich glaube, ich raffe es noch nicht so ganz..

    Thx :)
  • Original von cuSoon
    danke für die schnellen Antwoten :)

    Bin noch recht firsch in der iPhone-Welt, daher komme ich leider nicht so ganz mit.
    Die Buttons stehen für Thumbnails, die ich dynamisch laden. Beim durchgehen des Array bekommt halt jeder Button folgenden Aufruf (wie gesagt)

    Quellcode

    1. [thumbButton addTarget:self action:@selector(clickThumbnailButton:) forControlEvents:UIControlEventTouchUpInside];


    Wie kann ich denn in der "clickThumbnailButton" den Button identifizieren & woher bekomme ich dann meine Info "Gehe zu diesem großen Pic"? Ich glaube, ich raffe es noch nicht so ganz..

    Thx :)


    Wie 'gritsch' schon angedeutet hat, in Deiner Aktionsmethode hast Du den Parameter 'sender'. Das ist genau die Instanz, die die Aktion aufgerufen hat. Damit ist das Objekt bereits auch identifiziert, und Du kannst alles abfragen: "tag", Bild etc.
    I would be embarrassed if they did not spy on me.