У меня есть пользовательский TableViewCell с динамическим контроллером tableview снимок экрана моего приложения
продукты сохранены в CoreData, и я могу их получить (имя, цена и т. Д.), Но яне знаю, как реализовать количество продуктов.это текстовое поле, и я хочу сохранить текстовое поле, когда я нажимаю на кнопку корзины.
вот мой TableViewCell.h:
#import <UIKit/UIKit.h>
@interface ProduktTableViewCell : UITableViewCell <UITextFieldDelegate>
@property (nonatomic, weak) IBOutlet UILabel *produktnameLabel;
@property (nonatomic, weak) IBOutlet UILabel *preisLabel;
@property (nonatomic, weak) IBOutlet UILabel *vonDatumLabel;
@property (nonatomic, weak) IBOutlet UITextField *menge;
@property (nonatomic, weak) IBOutlet UILabel *bisDatumLabel;
@property (strong, nonatomic) IBOutlet UIButton *datumButton;
@property (strong, nonatomic) IBOutlet UIButton *warenkorbButton;
@end
TableViewCell.m:
#import "ProduktTableViewCell.h"
@implementation ProduktTableViewCell
@synthesize produktnameLabel;
@synthesize preisLabel;
@synthesize vonDatumLabel;
@synthesize bisDatumLabel;
@synthesize datumButton;
@synthesize menge;
@synthesize warenkorbButton;
@end
my ProductViewController.m:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
ProduktTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"produktCell"];
NSManagedObject *managedObject = [self.fetchedResultsController objectAtIndexPath:indexPath];
cell.produktnameLabel.text = [managedObject valueForKey:@"produktname"];
cell.vonDatumLabel.text = [managedObject valueForKey:@"vondatum"];
cell.bisDatumLabel.text = [managedObject valueForKey:@"bisdatum"];
cell.datumButton.tag = indexPath.row;
cell.warenkorbButton.tag = indexPath.row;
cell.menge.tag = indexPath.row;
NSNumberFormatter *formatter = [[NSNumberFormatter alloc] init];
NSLocale *german = [[NSLocale alloc] initWithLocaleIdentifier:@"de_DE"];
[formatter setLocale:german];
[formatter setNumberStyle:NSNumberFormatterCurrencyStyle];
[formatter setMinimumFractionDigits:2];
[formatter setMaximumFractionDigits:2];
NSNumber *firstNumber = [managedObject valueForKey:@"preis"];
cell.preisLabel.text = [formatter stringFromNumber:firstNumber];
return cell;
}
кнопка моей корзины:
- (IBAction)warenkorbButton:(id)sender {
NSManagedObjectContext *context = [app managedObjectContext];
UIButton *button = sender;
NSInteger rowInIndexPath =button.tag;
NSIndexPath *indexPath = [NSIndexPath indexPathForRow:rowInIndexPath inSection:0];
Warenkorb *warenkorb = [NSEntityDescription insertNewObjectForEntityForName:@"Warenkorb" inManagedObjectContext:context];
Produkt *produkt = [self.fetchedResultsController objectAtIndexPath:indexPath];
warenkorb.produktname =produkt.produktname ;
warenkorb.vondatum = produkt.vondatum;
warenkorb.bisdatum = produkt.bisdatum;
warenkorb.preis =produkt.preis;
NSError *error;
if (![context save:&error])
{
NSLog(@"Fehler beim hinzufügen : %@", [error localizedDescription]);
}
}