2010-12-13 16 views
0

Wenn Sie mehrere Auswahlmöglichkeiten für eine Tabelle aktiviert haben und einige Zellen auswählen, hat die ausgewählte Zelle ein rotes Häkchen auf der LINKEN Seite. (siehe Bild) Verwechseln Sie nicht das rechte Häkchen.iphone - Tabelle mit Mehrfachauswahl

Ich habe dies an Ort und Stelle

-(UITableViewCellEditingStyle)tableView:(UITableView*)tableView editingStyleForRowAtIndexPath:(NSIndexPath*)indexPath { 

    return UITableViewCellAccessoryCheckmark; 
} 

Alles ist in Ordnung. Wenn ich auf eine Zelle tippe, erscheint ein roter Haken auf der LINKEN Seite.

Irgendwann muss ich durch die Tabelle iterieren, um zu entdecken, welche Zellen dieses linke Häkchen haben.

Soweit ich getestet habe, ist dies kein AccessoryType oder EditingStyle. Zumindest in meinen Tests konnte keine Zelle als ausgewählter Test für diese Eigenschaften erkannt werden.

dank

alt text

+0

Ist Mehrfachauswahl in der API? Ich dachte, dass es nur durch Unterklassen –

+0

möglich war, da ich diese Funktionalität nie zuvor verwendet habe, ich weiß nicht, wie es damals war, aber ich sehe dies in der Dokumentation für 4.x ... – SpaceDog

+0

Können Sie einen Link in der Dokumentation geben wo es heißt, dass Sie UITableViewCellAccessoryCheckmark für UITableViewCellEditingStyle verwenden können? – Anna

Antwort

4

ich gelernt, dass es auf Auswahl von Zellen, die nicht eine gute Idee zu verlassen ist. Wenn sich eine Zelle aus der Ansicht bewegt, vergisst die UITableView normalerweise darüber. Was ich tat, war eine NSMutableArray voller BOOL s zu erstellen und jedes Mal, wenn eine Zelle ausgewählt oder deaktiviert wird, ändere ich den Wert am rechten Index. Wenn ich die ausgewählten Zellen brauche, kann ich einfach mein Array verwenden.

+0

Danke. Du hast recht und der schlimmste Teil ist, dass es scheint, dass es keine Möglichkeit gibt, das zu testen. Der Aufbau eines Arrays hat den Zweck erfüllt. – SpaceDog