2012-08-09 82 views
1

我有一個情節串連圖板,並使用塞格斯視圖之間導航SEGUE destinationViewController未檢測destiation方法

我使用以下代碼

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { 

    if ([[segue identifier] isEqualToString:@"thestring"]) { 
     [[segue destinationViewController] function1:argument1:argument2]; 
     [[segue destinationViewController] function2:argument1:argument2]; 

    } 
} 

由於某種原因,它被識別功能1爲目的地的一個成員視圖控制器但不是功能2,它顯示我當前的錯誤:

no known instance method for selector 'function2' 

function2被指定爲目標視圖的公共函數c ontroller(在它之前有一個「 - 」),它也用在目標視圖控制器的代碼中。

爲什麼它沒有檢測到它的任何原因?

感謝

EDITED

頁眉聲明如下

-(void)function2:(NSString*)argument1:(NSString*)argument2; 
+0

您可以請您發佈您的實際方法簽名(目標控制器中的聲明)? – Alladinian 2012-08-09 15:45:20

+0

你有沒有在你的頭文件中聲明它並將你的頭文件導入到你的類中? – Dustin 2012-08-09 15:47:59

+0

@alladinian我添加了方法聲明 – user1415780 2012-08-09 15:57:35

回答

2

使用強制告訴編譯器什麼類destinationController實際上是一個實例。

+0

謝謝Philip,我是新的iOS開發,你能給我一個演員的例子嗎? – user1415780 2012-08-09 15:58:57

+0

這與iOS無關,只是基本的C語言編程。例如:'[(MyControllerClassName *)[segue destinationViewController] function2:argument1:argument2];'。 – 2012-08-09 16:19:24

+0

我是iOS開發新手,嘗試在線搜索,找不到示例,請給我一個簡單的例子嗎? – user1415780 2012-08-14 14:04:01