我已将 backgroundColor 设置为位于项目文件夹中的图片。当我在模拟器中运行应用程序时,会显示图片。但是在我真正的 iPhone 上运行时,它只是白色的。这可能是什么原因造成的?可能是因为我在电脑和 iPhone 上都有 <0.5gb 的免费空间吗?
5 回答
你能发布一些代码吗?
您不希望将图像添加为backgroundColor
,而是将其添加为UIImageView
子视图。
// load the image
UIImage *image = [UIImage imageNamed:@"image.png"];
// create the image view using the image
UIImageView *imageView = [UIImageView alloc] initWithImage:image];
// add the image view as a subview
[yourview addSubview:imageView];
请检查您使用的图像名称的拼写。在实际设备中,它区分大小写。
那应该是足够的可用内存。将文件添加到项目时,请确保选择要复制到项目中并成为目标一部分的图像选项。
编辑:我的上述建议仅在您尝试加载指向图片的 UIImageView 时才有用,我猜在这种情况下您只是使用空白 UIImageView 并设置背景颜色。
此外,您可能想查看安排(即发送到后面,发送到前面等。尝试发送到前面,以防前面有东西阻挡视图)我认为这些选项位于菜单栏中设计 --> 布置
首先尝试Uninstall
应用 Clean
该项目Install
,然后检查是否没有。
其次,图片拼写可能存在一些问题,Case senstive
或者Not
As TheiPhone
区分大小写,但simulator
不是因为iPhone
文件系统区分大小写而Mac OS
不是
第三添加一个break point
你添加的地方UIImage
UIImageView *imgView = [[UIImageView alloc] initWithFrame:CGRectMake(10, 10, 100, 50)];
imgView.image = [UIImage imageNamed:@"a_image.png"];
然后在控制台上"po [imgView image]
“
如果它是 nil,那么资源没有被正确地复制到包中。
我有类似的情况。似乎模拟器 - Xcode 正在某处缓存图像,但在构建时正在丢失。
尝试:从模拟器、设备上卸载应用程序。清理项目。强制关闭 XCode,而不仅仅是项目,关闭它。打开,清理项目,构建 在这一步应该匹配设备和模拟器的行为,希望它是所需的图像。