加载委托时的警告窗口层次结构

时间:2012-11-11 13:25:24

标签: ios xcode delegates warnings hierarchy

今天我更新了我的Xcode并开始为新的iPhone 5屏幕更新我的应用程序。

我突然注意到,每次从屏幕A到屏幕B,都会收到此警告:

  

警告:尝试出现    谁的观点不在窗口   层次!

// This delegate method prepares the segue from Screen A (DilemmaViewController) to Screen B (OptionsViewController)
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    // Executes the following "if" statement if the user wants to add new options
    if ([segue.identifier isEqualToString:@"AddOptions"]) 
    {
        UINavigationController *navigationController = segue.destinationViewController;
        OptionsViewController *controller = (OptionsViewController *)navigationController.topViewController;
        controller.delegate = self;

        // If the user has already put some inputs on the form we send them through the segue
        if ([edit count] > 0){            
            controller.edit = edit;
        }            
    }
}

自从我的应用程序的第一个版本以来,我没有碰过这个,所以我不确定这里会发生什么。

我环顾网络,有些人谈论将代码从viewDidLoad转移到viewAppear,但我不认为这适用于这种情况。

1 个答案:

答案 0 :(得分:4)

好吧我明白了。

我的问题是,在某些时候我错误地将Touch Up Inside事件连接到原始(并且正确)的segue事件之上:

enter image description here

现在我修好了它:

enter image description here

它再次正常工作。