我是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];
}
答案 0 :(得分:1)
您应该创建一个名为Resources的文件夹并在那里添加图像。
UIImage *image = [UIImage imageNamed:@"IMG_0270.PNG"];
imgView_.image = image;
我使用了上面的代码,它在我的系统上工作正常。可能是您没有在界面构建器中连接imgView的插座。
编辑:
我发现的问题是你没有将它添加为子视图。您应该像这样更改代码:
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];
答案 1 :(得分:0)
你的代码没有prbm。但有些时候图像变得腐败,由于这个原因它没有显示,尝试其他一些图像,如果图像没有添加到束路径添加
项目目标>构建阶段>复制捆绑资源
。可能会有所帮助。
答案 2 :(得分:0)
您在此声明中遇到问题
[image release];
记住何时使用版本的最简单方法是NARC
keyword:)
永远记得在4个案例中发布电话。
N新
A Alloc
R保留
C复制
答案 3 :(得分:0)
尝试删除方法的第一行,如果已连接xib中的UIImageView
,则不需要重新分配它。此外,请致电self.imageView.image
而不是imageView.image
。