2
我正在使用故事板的示例應用程序。 當做popoverview,我使用的方式 - 'Embed in navigation controller
'。在故事板中,Popoverview不會收到代表團
但我遇到了delegate
用法的大麻煩。 這是不委託popover視圖的。
[ViweController.m]
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if([[segue identifier] isEqualToString:@"PopRootViewController"]){
NSLog(@"[segue destinationViewController] :%@", [segue destinationViewController]);
rootViewController = [[RootViewController alloc] init];
rootViewController.delegate = (id)self;
NSLog(@"%@---%@---%@", rootViewController.delegate, self, rootViewController);
}
}
-(void)didTap22 {
NSLog(@"delegate step 1 success!! ");
}
這個來源是這樣的結果:
[segue destinationViewController] :<UINavigationController: 0x88660a0>
<ViewController: 0x6b795e0>---<ViewController: 0x6b795e0>---<RootViewController: 0x6b7da60>
但[RootViewController的]沒有收到代表團。
[RootViewController.m]
@implementation RootViewController
@synthesize items, delegate;
- (void)viewWillAppear:(BOOL)animated
{
[super viewWillAppear:animated];
....
self.items = mutableFetchResults;
NSLog(@"333333..... %@, ....... %@", self.delegate, self);
}
結果:
333333..... (null), ....... <RootViewController: 0x8866520>
RootViewController的代表團爲空。 我找不到解決方案。
有人幫助我,請!
把一個'NSLog(@「約設置委託」);'在行'rootViewController.delegate =(id)self;'之前,這應該解釋它。 –
對不起,但我不明白你的意見。我的錯是什麼? – hyekyung
它應該顯示viewWillAppear已經在您設置委託時被調用。 –