2010-11-30 150 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 
相关问题