_topBar = [[UIView alloc]initWithFrame:CGRectMake(0, 0, 320, 45)];
UIImageView *bar = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"top_bar.png"]];
bar.frame = CGRectMake(0, 0, 320, 45);
[_topBar addSubview:bar];
_up = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"up.png"]];
[_topBar addSubview:_up];
_up没有显示在我的构建中。如果我为我的资源文件夹中的任何其他图像交换“up.png”,它会显示,但up.png拒绝。有什么我能做的吗?我只使用UIImage,静态分配的UIImageView初始化它,删除并重新添加.png文件,将它们从资源文件夹中取出并放在其他地方,重新保存它们,除了抛出它们之外的所有内容。
修改 该文件保存为up.png,但实际上是up.png.psd。只是阅读细则的问题。
答案 0 :(得分:6)
检查Finder中的种类。它可能不是png,因此不会显示。
我现在知道这是真的,因为你评论过:)
答案 1 :(得分:3)
有几件事。在右侧窗格中选择文件,打开最右侧(第3个)文件检查器窗格,并确保此图像包含在目标中。
在代码中,突破这个:
UIImage *image = [UIImage imageNamed:@"up.png"];
NSLog(@"image %@", image);
_up = [[UIImageView alloc]initWithImage:[UIImage imageNamed:@"up.png"]];
NSLog(@"UP FRAME: %@", NSStringFromCGRect(_up.frame) );
// maybe set the frame to what you want?
_up.frame = (CGRect){ {0,0}, image.size }; // set origin where you want it