Wie übergebe ich UITableView IndexPath an UIButton @selector durch Parameter in iOS?

8

Ich habe UIButton in UITableViewCells hinzugefügt. Ich habe, wenn der Benutzer auf die Schaltfläche klickt, den Indexpfad abgerufen, um die Werte von NSMutableArray zu verwenden. Ich habe die folgende verwendet, um die aktuelle IndexPath zu erhalten,

%Vor%

Kann mir bitte jemand helfen, den aktuellen Indexpfad UIButton's @selector zu übergeben. Danke im Voraus.

BEARBEITEN:

Dies ist die Ausgabe, die ich von NSLog()

bekommen habe %Vor%     
Yuvaraj.M 13.08.2012, 14:14
quelle

5 Antworten

30

Fügen Sie Ihr UIButton Like this

hinzu %Vor%

Und dann seine Tag-Nummer -

%Vor%

Hinweis: Die obige Lösung funktioniert, wenn Ihr TableView nur über einen Abschnitt verfügt. Wenn Ihr TableView mehr als einen Abschnitt enthält, sollten Sie Ihren Abschnittsindex kennen oder nach den folgenden Methoden suchen.

Alternative: 1

%Vor%

Alternative: 2

%Vor%     
TheTiger 13.08.2012, 14:23
quelle
6

Da die Schaltfläche eine Unteransicht der Zellenansicht ist und die Tabellenansicht den Indexpfad der Zellenansicht kennt, würde so etwas funktionieren:

%Vor%     
Simon Lawrence 13.08.2012 14:35
quelle
2

Wenn Sie nur die Tabellenzeile benötigen, können Sie die Tag-Eigenschaft der Schaltfläche auf die Zeilennummer setzen. Wenn Sie den gesamten Pfad (mit Abschnittsnummer) benötigen, müssen Sie UIButton ableiten und eine neue Eigenschaft erstellen ("indexPath" wäre ein guter Name), die Sie beim Hinzufügen der Schaltfläche zur Tabellenzeile festlegen würden. p>     

sgress454 13.08.2012 14:23
quelle
1

Für eine Tabellenansicht mit mehr als einem Abschnitt wäre eine einfachere Lösung die Zuweisung des Tags:

%Vor%

Verwenden Sie im Ereignishandler:

%Vor%

Beachten Sie, dass Sie mit einer größeren Zahl als 1000 multiplizieren müssen, wenn einer Ihrer Abschnitte 1000 oder mehr Zeilen enthalten kann.

    
Peter Robert 10.06.2016 11:10
quelle
0

funktioniert für mich, wenn ich das Tag im cellForRowAtIndexPath ... zum

Button hinzufüge %Vor%

und in der Zellklasse erhalten Sie das Tag ... Zum Beispiel:

%Vor%

mit dem Sie die Zelle kennen können. gut das funktioniert für mich, Entschuldigung für mein Englisch.

    
indiefr 07.07.2014 22:21
quelle