我有一个名为“chooseDateViewController”的viewController,在.m文件中,它从用户获取输入并放入一个字符串。我有另一个名为“showTable”的viewController,我有一个自定义表,它接受字符串中的日期。根据日期(字符串)生成表(在showTable.m中)。
我希望能够在用户输入数据并按下按钮时调用“showTableViewController”视图控制器,然后将它们带到showTableViewController,其中日期很好地显示但我的问题是我无法传递数据来自“ chooseDate“在”showTable“中查看控制器的方法。这就是我这样做但它不起作用......我尝试过NSLog但它甚至没有进入该功能。如果有人知道为什么,那将非常感激。
由于
// In chooseDateViewController.m
-(void) sendValue {
NSString *date= @"July 25 2012";
UIViewController *view5 = [[showTableViewController alloc] initWithNibName:@"showTableViewController" bundle:nil];
[self.navigationController pushViewController:view5 animated:YES];
[view5 receiveNumbers:date]; //trigger the method in showTable.m
[view5 release];
}
// showTableViewController.m
-(void) receiveNumbers: (id) sender {
NSLog (@"data received is %@", sender);
}
答案 0 :(得分:0)
也许你可以用信息初始化viewController,例如,你可以有一行如下:
UIViewController *view5 = [[showTableViewController alloc] initWithSomeInfo: (the structure that houses the data)];
然后在showTableViewController的自定义init方法中,您可以在推送视图控制器之前处理数据。
我希望这有帮助, 噬细胞
以下是您正在寻找的一些代码: 在showTableViewController中,您有一个变量来保存传入的信息:
- (id)initWithSomeInfo(NSArray*)info{
self = [super init];
if(self){
myOwnVariable = info;
[self processInfo:myOwnVariable];
}
return self;
}