我应该把我的图像放在iPhone项目中的哪个位置?

我是iPhone开发人员的新手。

现在我有一个项目,其目录结构如下所示:

Tutorial \__Tutorial\ \__1.png \__TutorialViewController.h \__TutorialViewController.m \__TutorialViewController.xib \__Supporting Files\ \__Frameworks\ \__Products\ 

我尝试使用[UIImage imageNamed:@“1.png”]将图像渲染到视图中:

  UIImage *image = [UIImage imageNamed:@"1.png"]; imageView.image = image; [image release]; 

但图像没有显示出来。

所以我想知道我应该在哪里放置图像?

另外,如果我有很多图像(如1000号),应该怎么办?


这是我的代码:

 #import "TutorialViewController.h" @implementation TutorialViewController @synthesize labelText; @synthesize imageView; -(void) click:(id)sender { NSString *titleOfButton = [sender titleForState:UIControlStateNormal]; NSString *newText = [[NSString alloc]initWithFormat:@"%@",titleOfButton]; // Change Image When Clicking Color Button if([titleOfButton isEqualToString:@"Blue"]){ NSLog(@"Blue"); imageView.image = [UIImage imageNamed:@"a.png"]; }else{ imageView.image = [UIImage imageNamed:@"b.png"];; NSLog(@"Else"); } labelText.text = newText; [newText release]; } 

您应该创建一个名为Resources的文件夹并在那里添加图像。

 UIImage *image = [UIImage imageNamed:@"IMG_0270.PNG"]; imgView_.image = image; 

我使用了上面的代码,它在我的系统上工作正常。 可能是您没有在界面构建器中连接imgView的sockets。

编辑:

我发现的问题是你没有将它添加为子视图。 您应该像这样更改代码:

 UIImageView *imageView = [[UIImageView alloc] initWithImage:[UIImage imageNamed:@"1.png"]]; NSString *titleOfButton = [sender titleForState:UIControlStateNormal]; NSString *newText = [[NSString alloc] initWithFormat:@"%@", titleOfButton]; // Change Image When Clicking Color Button if([titleOfButton isEqualToString:@"Blue"]) { NSLog(@"Blue"); imageView.image = [UIImage imageNamed:@"IMG_0270.png"]; } else { imageView.image = [UIImage imageNamed:@"b.png"]; NSLog(@"Else"); } [imageView setFrame:CGRectMake(10, 10, 230, 123)]; [self.view addSubview:imageView]; // labelText.text = newText; [newText release]; 

你的代码没有prbm。 但有些时候图像变得腐败,由于这个原因它没有显示,尝试一些其他图像,如果图像没有添加在捆绑路径添加在

项目目标>构建阶段>复制捆绑资源

。 可能会有所帮助。

你在这个声明中有问题

 [image release]; 

记住何时使用发布的最简单方法是NARC关键字:)

永远记得在4种情况下进行释放呼叫。

N新

一个Alloc

R保留

C复制

尝试删除方法的第一行,如果已连接xib中的UIImageView ,则不需要重新分配它。 而且调用self.imageView.image而不仅仅是self.imageView.image