• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Die Bildungsoffensive hier im Forum geht weiter! Jetzt sollen Kreativität und technische Möglichkeiten einen neue Dimension erreichen. Das Thema in diesem Monat lautet - Verkehrte Welt - Hier geht es lang --> Klick

UIStepper ändert den Wert nur bei jedem zweiten Tab

bginner

Ingrid Marie
Registriert
13.12.09
Beiträge
266
Hallo zusammen,

Ich hab eine iPad App und benutze einen SplitViewController.
Mein DetailViewController ist eine UITableView. Für die TableView benutze ich eine Custom Cell (DrinksCell heisst diese).
In dieser CustomCell gibt es einen Stepper und einen Label, der den Wert des Steppers anzeigen soll. Der Stepper reagiert auf eine IBAction Methode die in dem DetailViewController definiert ist.
Die Methode sieht wie folgt aus:

Code:
-(IBAction)stepperPressed:(UIStepper *)stepper
{
  self.numberStepper = stepper;
NSLog(@"Stepper value, %f", stepper.value);

//Zelle ermitteln in der der Stepper sich befindet
DrinksCell *cell = (DrinksCell *)[[[stepper superview] superview] superview];

//IndexPath der Zelle ermitteln
NSIndexPath *path = [self.tableView indexPathForCell:cell];

//bis hierhin läuft noch alles gut.

//Jetzt die eine bestimmte Zelle neu laden.
[self.tableView reloadRowsAtIndexPaths:@[path] withRowAnimation:UITableViewRowAnimationAutomatic];
//und das geht schief
}

Wenn ich alle Zellen neu lade
Code:
[self.tableView reloadData];
dann funktioniert das auch sofort, aber alle Zellen neuzuladen ist ja nicht der sinn der Sache.

Fakt ist das der Stepper nur jeden zweiten Tab zählt.
Sowohl in der Console als auch im TableView selbst.
Wenn ich die letzte Zeile lösche und auf das Tableview update verzichte zählt der Stepper wie gewohnt in der Console.
Irgendwie kommt der nicht mit
Code:
[self.tableView reloadRowsAtIndexPaths:@[path] withRowAnimation:UITableViewRowAnimationAutomatic];
klar. Aber warum nicht??? reloadData geht ja. Ich verstehe es echt nicht. Ich hoffe ihr könnt mir helfen.