我是 ios 的新手。我正在尝试将图像加载到我的 View 中。这是我的代码:
-(void)loadView
{
UIImageView *imageHolder = [[UIImageView alloc] initWithFrame:CGRectMake(40, 40, 40, 40)];
UIImage *image = [UIImage imageNamed:@"test.jpg"];
imageHolder.image = image;
[imageHolder sizeToFit];
[self.view addSubview:imageHolder];
}
在我名为 Test
的类中,它是 UIViewController
的子类。 test.jpg
位于同一目录中。当我运行时,我在这一行遇到错误:
UIImage *image = [UIImage imageNamed:@"test.jpg"];
Thread1:EXC_BAD_ACCESS(code=2,address=0xbasd)
我哪里出错了?
我使用的是 ios7 和 xcode 5
最佳答案
我在您的代码中看到了问题。它导致无限循环。
loadView - 当 View 为空并且您负责创 build 置 View 时调用此方法。
当您访问 self.view
时,您的 View 是空的,将再次调用 loadView 方法,它将在无限循环中结束。
UIImageView *imageHolder = [[UIImageView alloc] initWithFrame:CGRectMake(40, 40, 40, 40)];
UIImage *image = [UIImage imageNamed:@"test.jpg"];
imageHolder.image = image;
[imageHolder sizeToFit];
self.view = [[UIView alloc] initWithFrame:frame];
[self.view addSubview:imageHolder];
图像在文件结构中的位置并不重要。当您将图像添加到项目时。 您可以通过将图像拖动并抓取到项目中来实现。或通过 - “将文件添加到项目” 添加图像时,您应该选择要将其添加到的目标项目。
关于ios - 如何将图像加载到 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23495586/