Ich habe eine UITableViewController
, die aus einem TableView
und einem UILabel
besteht. UITableViewSource
gibt Daten an die TableView
über benutzerdefinierte UITableViewCell. UITableViewCell
besteht aus einem Stepper, der Elemente hinzufügen kann und das Label enthält diesen Wert.UIStepper über Reiten die UILabel Werte in Custom Cell in iOS
Ich mag die UILabel
in UIViewController
aktualisieren, wenn der Benutzer auf dem Stepper tippt, und ich kann nicht scheinen, dass zu arbeiten ...
Jede Hilfe/Tipps, sehr zu schätzen! Hier ist Beispielcode von meinem Testprojekt, es gibt eine Menge ungenutzten Code, aber das ist nur ein Test, also lasse ich es da sein.
Danke,
Der Kodex
My Custom Zellklasse "StepperDetailsCell" ist.
@interface StepperDetailsCell : UITableViewCell
@property (nonatomic,weak) id <StepperDetailsCellDelegate> delegate;
@property (strong, nonatomic) IBOutlet UIImageView *imagegroceries;
@property (strong, nonatomic) IBOutlet UIStepper *objstepper;
@property (strong,nonatomic) IBOutlet UILabel *lblsteppervalue;
-(IBAction)stepperclicked:(UIStepper*)sender;
@end
und meine Tabellenansicht Klasse wird als "SecondViewController" genannt
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
static NSString *simpleTableIdentifier = @"Cell";
cell = (StepperDetailsCell *)[tableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];
if (cell == nil){
cell = (StepperDetailsCell *)[[UITableViewCell alloc]initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier];
}
[cell.imagegroceries setImage:[UIImage imageNamed:[[self.didSelectedImages sortedArrayUsingSelector:@selector(localizedCaseInsensitiveCompare:)]objectAtIndex:indexPath.row]]];
[cell.objstepper addTarget:self action:@selector(stepperValuechanges:) forControlEvents:UIControlEventValueChanged];
cell.lblsteppervalue.text = [self.quantityArr objectAtIndex:indexPath.row];
return cell;
}
Pragma Marke - Stepper Aktion Methode
-(void)stepperValuechanges:(UIStepper *)sender{
CGPoint stepperPosition = [sender convertPoint:CGPointZero toView:self.tableView];
indexPath1 = [self.tableView indexPathForRowAtPoint:stepperPosition];
if (indexPath1 != nil)
{
float val = sender.value;
valueInt = (int)val;
[self.quantityArr replaceObjectAtIndex:indexPath1.row withObject:[NSString stringWithFormat:@"%i",valueInt]];
NSLog(@"%@",self.quantityMDict);
}
[self.tableView reloadData];
}
Hier ist alles einwandfrei funktioniert, aber wenn neue Zelle Laden von der Unterseite des Tableview, dann die neue Zelle Stepper als verschwundene Zelle Stepper.
Es gibt keinen Code in Ihrer Frage ist. –
@Nitin Gohel, Jetzt habe ich meinen Code hinzugefügt –