Я пытаюсь использовать методы для передачи значений из текстовых полей в одном представлении в соответствующие текстовые поля в другом представлении. Действие valuesChanged связано с событием «Редактирование завершено» в текстовых полях. Я попытался использовать «Значение изменено» с похожими результатами (это не работает.). Единственное предупреждение, которое я получаю, - это вызов метода.
Вот код для VolumeViewController:
@implementation VolumeViewController
@synthesize boxWidth;
@synthesize boxHeight;
@synthesize boxLength;
@synthesize sphereRadius;
@synthesize boxResult;
@synthesize sphereResult;
@synthesize areaViewController;
-(IBAction)valuesChanged:(id)sender
{
NSString *length = boxLength.text;
NSString *width = boxWidth.text;
NSString *radius = sphereRadius.text;
NSLog(@"length: %@", length);
NSLog(@"width: %@", width);
NSLog(@"radius: %@", radius);
[areaViewController changeValues:width :length :radius];
}
-(void)changeValues:(NSString*)widthString :(NSString*)lengthString :(NSString*)radiusString
{
boxWidth.text = widthString;
boxLength.text = lengthString;
sphereRadius.text = radiusString;
}
Как видите, действие valuesChanged создает три объекта NSString, каждый из которых соответствует текстовым свойствам текстового поля. Эти строки затем передаются в метод changeValues areaViewController. Метод changeValues для areaViewController идентичен методу volumeViewController, за исключением того, что имена текстовых полей отличаются. Тем не менее, команды NSLog, которые я никогда не отображал в консоли, показывают, что, несмотря на то, что мои текстовые поля связаны с действием, оно не вызывается. Что мне нужно исправить?
Предупреждение выдается после вызова метода "[areaViewController changeValues: width: length: radius], и в нем говорится, что 'UIViewController' может не отвечать на '-changeValues :::'