【发布时间】:2014-05-14 18:54:14
【问题描述】:
我有一个视图控制器,它是从其他几个视图控制器调用的。这个视图控制器包含一个 UITextField,它收集不同的信息,具体取决于哪个视图控制器调用了它。 信息必须在收集后存储。为了尽可能独立,存储信息的方法应该位于调用视图控制器中。 因此,我在方法中使用以下代码来收集信息:
- (void) collectContent
{
NSString *info = [textField text];
[textField resignFirstResponder];
[[NSNotificationCenter defaultCenter] postNotificationName:@"NewValueA" object:info];
[[self navigationController] popToRootViewControllerAnimated:YES];
}
在调用视图控制器中,我在它的 init 方法中有以下行:
- (id) init
{
...
if (self)
{
...
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(storeNewValueA) name:"NewValueA" object:nil];
}
return self;
}
但是现在,我想从另一个视图控制器中使用这个视图控制器来收集 ValueB 或 ValueC。如何引用调用视图控制器来调用存储收集值的方法?我想决定,如果视图控制器是从 vcB 调用的,则输入的值必须是 valueB,依此类推...
【问题讨论】:
标签: ios objective-c cocoa-touch uiviewcontroller uikit