У меня есть сгруппированный статический UITableViewController, с 3 строками на раздел. Каждая строка содержит UITextField. Как получить значение для каждого UITextField?
Пока что я видел, как получить значение одного UITextField. Что мне делать, если мне нужно получить больше одного.
Я планирую поместить значения этих полей в NSMutableDictionary.
Вот мой код для создания табличного представления: (несущественные части опущены)
#import "AddItemTableViewController.h"
#import "iMonggoFetcher.h"
@interface AddItemTableViewController() <UITextFieldDelegate>
@property (weak, nonatomic) NSMutableDictionary *productItem;
//required
@property (weak, nonatomic) IBOutlet UITextField *stockNoTextField;
@property (weak, nonatomic) IBOutlet UITextField *nameTextField;
@property (weak, nonatomic) IBOutlet UITextField *retailPriceTextField;
//basic info
@property (weak, nonatomic) IBOutlet UITextField *costTextField;
@property (weak, nonatomic) IBOutlet UITextField *descriptionTextField;
@property (weak, nonatomic) IBOutlet UITextField *barcodesTextField;
@property (weak, nonatomic) IBOutlet UITextField *tagsTextField;
@property (weak, nonatomic) IBOutlet UISwitch *exemptFromTaxSwitch;
//advanced features
@property (weak, nonatomic) IBOutlet UISwitch *allowDecimalQuantitiesSwitch;
@property (weak, nonatomic) IBOutlet UISwitch *enableOpenPriceSwitch;
@property (weak, nonatomic) IBOutlet UISwitch *disableDiscountSwitch;
@property (weak, nonatomic) IBOutlet UISwitch *disableInventorySwitch;
@end
@implementation AddItemTableViewController
@synthesize productItem = _productItem;
@synthesize stockNoTextField = _stockNoTextField;
@synthesize nameTextField = _nameTextField;
@synthesize retailPriceTextField = _retailPriceTextField;
@synthesize costTextField = _costTextField;
@synthesize descriptionTextField = _descriptionTextField;
@synthesize barcodesTextField = _barcodesTextField;
@synthesize tagsTextField = _tagsTextField;
@synthesize exemptFromTaxSwitch = _exemptFromTaxSwitch;
@synthesize allowDecimalQuantitiesSwitch = _allowDecimalQuantitiesSwitch;
@synthesize enableOpenPriceSwitch = _enableOpenPriceSwitch;
@synthesize disableDiscountSwitch = _disableDiscountSwitch;
@synthesize disableInventorySwitch = _disableInventorySwitch;
- (IBAction)save:(UIBarButtonItem *)sender {
[self.productItem setValue:self.stockNoTextField.text forKey:IMONGGO_PRODUCT_STOCK_NO];
[self.productItem setValue:self.nameTextField.text forKey:IMONGGO_PRODUCT_NAME];
[self.productItem setValue:self.retailPriceTextField.text forKey:IMONGGO_PRODUCT_RETAIL_PRICE];
}
#pragma mark - UITextField
- (BOOL)textFieldShouldReturn:(UITextField *)textField {
return YES;
}
- (BOOL)textFieldShouldEndEditing:(UITextField *)textField {
return YES;
}
- (void)textFieldDidEndEditing:(UITextField *)textField {
// optionally trigger delegate method here
}
#pragma mark - View lifecycle
- (void) viewWillAppear:(BOOL)animated{
//[self.stockNoTextField becomeFirstResponder];
}
- (void) viewDidLoad{
[super viewDidLoad];
self.stockNoTextField.delegate = self;
self.nameTextField.delegate = self;
self.retailPriceTextField.delegate = self;
//will do the rest later, just trying it out for now
}
@end