2012-07-18 122 views
1

我需要您的幫助。 我有兩個不同的視圖控制器: 1.帶有按鈕 2.與圖像視圖。使用prepareforsegue將圖像從按鈕傳遞到圖像視圖

我試圖將按鈕的圖像傳遞到第二個視圖控制器的圖像視圖。 012fprepareforsegue被調用,但圖像不通過。 我重視我的代碼:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender 
{ 
    if ([[segue identifier] isEqualToString:@"pushGuessLogo"]) 
    { 
     GeneralGuess *vc = [segue destinationViewController]; 
      [self setLogoImageView:[[UIImageView alloc] initWithImage:self.logoImageSelected.imageView.image]]; 

     [vc setImageGuessView:self.logoImageView]; 
    } 

} 

ImageGuessView是圖像視圖的視圖控制器號出口2

謝謝

+0

如果你插入'UIImageView * test = [[UIImageView alloc] initWithImage:self.logoImageSelected.imageView.image],會發生什麼? NSLog(@「Test:%@」,test);'在那裏看看你正在嘗試傳遞什麼? – 2012-07-18 21:02:27

+0

[在prepareForSegue中設置UIImageView.image]的可能的重複(http://stackoverflow.com/questions/11515643/set-uiimageview-image-in-prepareforsegue) – 2012-07-18 21:08:29

回答

4

有人回答了這個前些天形象的看法,但我太懶得找到鏈接。 (如果SO還有一個知識庫可以提升問題的知識庫,而不是在搜索中出現的無窮無盡的問題,這不是很好)

的要點是,viewController的視圖層次還沒有建立在prepareForSegue點,所以你的ImageGuessView在這一點上是零。你可以做的是在你的GeneralGuess類上定義一個UIImage屬性並設置它。然後在viewWillAppear將該圖片加載到您的ImageGuessView中。

+1

http://stackoverflow.com/questions/11515643/set- uiimageview-image-in-prepareforsegue/11515796#11515796 – 2012-07-18 21:08:14

+0

嗨大衛,謝謝你,它幫助 – 2012-07-21 09:13:01

0

目標尚未加載時prepareForSegue被稱爲所以圖像視圖是nil,因此沒有任何反應,您嘗試設置圖像。

相反,你應該通過圖像,並將其存儲在目標視圖控制器上的屬性,以後再設置它在目標視圖控制器viewDidLoad

相關問題