我只想将数据从MyCoolViewController传输到firstViewController。
我在将数据从MyCoolViewController类转移到firstViewController时遇到问题。这是我的代码
MyCoolViewController.h// a class where data send from
@protocol MyCoolViewDelegate;
@interface MyCoolViewController : UIViewController {
id <MyCoolViewDelegate> delegate;//
}
@property (nonatomic, assign) id delegate;//
@end
@protocol MyCoolViewDelegate <NSObject>//
-(void)sendAStringToAnotherView:(NSString*)string;
@end
MyCoolViewController.m
-(void)viewDidLoad{
label.text = townName;
[delegate sendAStringToAnotherView:townName];//problem is here
}
firstViewController.m //a class where data sent
-(void)viewDidLoad{
MyCoolViewController *myViewControllerPointer=[[MyCoolViewController alloc] init];
myViewControllerPointer.delegate = self;//
}
-(void)sendAStringToAnotherView:(NSString*)string
{
//displays the string as console output
NSLog(@"plzzzzzz show data%@",string);
}
什么都没有。请帮忙
答案 0 :(得分:2)
示例代码的第一个问题:
NSLog(@"plzzzzzz show data",string);
应该是:
NSLog(@"plzzzzzz show data: %@", string);
缺少的是装载MyCoolViewController
。仅仅创造它是不够的。必须有一个类似命名的nib或loadView方法。
您可以使用以下内容强制加载(仅用于测试)firstViewController viewDidLoad
:
[[self.view addSubview:self.myViewControllerPointer.view];
2011-08-28 12:32:06.410 TestVC [25700:f203] plzzzzzz显示数据:这是一个字符串