2014-03-04 88 views
0

首先無法識別的選擇,這裏的故事板的視圖控制器內部的容器視圖

的UIViewController>查看的基本設置>容器視圖 - > UICollectionViewController

容器和UICollectionViewController之間的嵌入SEGUE是「SegueA」。

現在,目標UICollectionViewController是CustomCollectionVC.h的子類。

而且CustomCollectionVC有一個公共的方法:

- (void)updateCollection:(NSArray *)data; 

的包圍的UIViewController需要CustomCollectionVC這樣的引用:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
    if([segue.identifier isEqualToString:@"SegueA"]) 
    { 
     customCollection = (CustomCollectionVC *)segue.destinationViewController; 
    } 
} 

然後,在稍後的點(一些數據已被加載之後) ,我們呼籲:

[customCollection updateCollection:data]; 

但是,在這一點上,我得到了unh的elpful錯誤:

-[UICollectionViewController updateCollection:]: unrecognized selector sent to instance 0x10bc73ef0 

如果這意味着CustomCollection的沒有被正確地投什麼,然後我在裏面prepareForSegue做錯了嗎?

我見過很多人問如何引用容器內的視圖,他們都使用這種方法。

任何幫助將不勝感激!謝謝!

+1

我懷疑你的故事板中沒有將目標控制器標識爲「CustomCollectionVC」。在執行'(CustomCollectionVC *)'cast之前檢查它的實際類。 –

+1

鑄造不會改變你的控制器的類,它只會告訴控制器你認爲這個類是什麼。它看起來像你沒有改變你的集合視圖控制器的類到你的自定義類。 – rdelmar

+0

仔細檢查「實用程序」面板中的所有網點。無法識別的選擇器通常鏈接到不良的插座。 –

回答

0

好的,原來是一個非常簡單的問題。正如Philip Mills,rdelmar和Ivan Lesko指出的那樣,我忘記了在Storyboard中設置CustomCollectionVC。該死的。

相關問題