2010-11-30 207 views
2

視圖控制器我想我的視圖控制器檢查,如果有另一種視圖控制器上的圖像時,我點擊一個按鈕交互。但是到目前爲止,即使有一個圖像模擬器不執行循環。從另一個視圖控制器

代碼:

- (IBAction)buttonClicked:(id)sender { 

    iPhotoViewController *photo = [[iPhotoViewController alloc] initWithNibName:@"iPhotoViewController" bundle:nil] ; 


    if (photo.mainView.image) 
    { 
     but = (UIButton *) sender; 
     self.selectedImage = [_images objectAtIndex:but.tag]; 

     iPhoto2AppDelegate *delegate = [[UIApplication sharedApplication] delegate]; 
     [delegate.navController popViewControllerAnimated:YES]; 

     [photo release]; 
    } 

感謝, 普利文

回答

0

你同時定義

@property(nonatomic, retain) UIImage * image; // (or UIImageView *) 
在您的.h

@synthesize image; 

在您的m?

1

您正在創建的iPhotoViewController一個新的實例,這意味着你要使用的圖像必須在筆尖文件中。並且是在筆尖文件可用意味着它是在你的項目,以便創建一個新的iPhotoViewController只是爲了看看有沒有什麼形象似乎有點奇怪可用。

有可能已經是這個iPhotoViewController的地方,你有一個加載的圖像的實例?如果是這樣,你需要檢查的實例。

也許你正在測試的東西,並在筆尖設置圖像,只是希望確保它的工作原理。在這種情況下,原因photo.mainView.image未設置是因爲您只創建了視圖控制器,但該視圖尚未加載並從筆尖設置。爲了僞造這個,你需要在檢查圖像是否被設置之前訪問控制器的view屬性。

iPhotoViewController *photo = [[iPhotoViewController alloc] initWithNibName:@"iPhotoViewController" bundle:nil] ; 

[photo view]; 
if (photo.mainView.image) { 
// continue as before 
相關問題