使用NSImageView设置NSBox的setContentView不起作用

时间:2011-07-01 18:38:48

标签: objective-c cocoa

我在主视图中设置了一个接受拖放的NSBox。我们将URL存储到str中。然后我们加载图像并将其添加到NSBox的内容视图中。

 imageView = [[NSImageView alloc] initWithFrame:CGRectMake(0, 0, 390, 150)];
 NSURL *imageURL = [NSURL URLWithString:str];
 NSImage *image = [[NSImage alloc] initByReferencingURL:imageURL];
 [imageView setImage:image];
 [self setContentView:imageView];

然而,这没有做任何事情。图像不会显示在nsbox中。

另一个奇怪的地方。起初我试图通过界面构建​​器添加NSImageView,但他们唯一的图像容器是IKImageView ......这有点奇怪吗? NSImageView不是更普遍吗?我主要在iOS上开发,所以我有ios开发者网站的版本。

有什么想法吗?

编辑:我还应该补充一点,当我在IB中使用IKImageView时,图像会显示出来。 Edit2:我也尝试过将initWithFrame取出并用init替换它,不用了。

1 个答案:

答案 0 :(得分:1)

问题在于我使用initByReferencingURL来获取NSImage。这不适用于本地文件,所以我使用了initByReferencingFile,一切运行良好!