2012-06-22 78 views
1

設置屬性此設置正確的委託,一切恢復正常功能:用點符號VS括號標記

UINavigationController *nc = [segue destinationViewController]; 
    RecipeAddViewController *rc = [nc.viewControllers objectAtIndex:0]; 
    rc.delegate = self; 

當我這樣做:

[[[[[segue destinationViewController] viewControllers]objectAtIndex:0]delegate]self]; 

的委託方法不會被調用。爲什麼是這樣?

回答

0

'。'語法會根據用法調用getter和setter。然而,在消息語法中,我們需要像下圖那樣調用顯式設置器。

[[[[segue destinationViewController] viewControllers]objectAtIndex:0] setDelegate:self]