2014-09-22 104 views
0

所以,我有一個基本上只包含一個視圖的.xib文件,並在其中,與UIImageView和UIITextView滾動視圖。我有連接到這些子視圖的網點。無法設置圖像屬性的UIImageView

出於某種原因,我無法設置圖像視圖的圖像屬性。下面是我如何實例化我的UITableview中的視圖控制器:

MyNewViewController *ssv = [[MyNewViewController alloc]initWithNibName:@"MyNewViewController" bundle:nil]; 
[[self navigationController]pushViewController:ssv animated:YES]; 
ScreenshotInfo *currentPic = [pics objectAtIndex:indexPath.row]; 
UIImage * pic = [UIImage imageWithData:currentPic.pic.imageData]; 
ssv.imageView.image = pic; 

// even doing like below does not work 
//ssv.imageView.image = [UIImage imageNamed:@"fbpic.png"]; 

這應該不夠嗎?

以編程方式添加UIImageView,但這不應該是解決方案。

在viewdidload中設置圖像的作品,但我想從第一個視圖控制器的圖像數據。

有什麼建議嗎?

+0

'imageView' nil? – Larme 2014-09-22 15:41:57

+0

你嘗試過'initWithNibName:nil'嗎?如果筆尖和類名稱相同,操作系統將自動加載正確的筆尖。您應儘可能避免潛在的拼寫錯誤。 – Clay 2014-09-22 15:52:36

+0

是的 - 結果imageView是零....但它不應該自動實例化,因爲它連接到插座?添加答案Larme ...謝謝你們兩位。 – Anders 2014-09-22 15:59:03

回答

0

當您的程序運行在ssv.imageView.image = pic時,名爲imageView的ssv屬性必須爲nil。因爲ssv的根視圖尚未加載。您的設置圖像代碼在一個運行循環中運行,而視圖控制器的加載視圖在下一個運行循環中運行。這就是爲什麼你設置圖像viewDidLoaded工作正常。你應該在viewDidLoaded的方法中設置筆尖視圖的屬性。