从有效的URL加载后,为什么NSData保持为零?

时间:2014-12-23 19:30:56

标签: ios uiimageview

@interface ViewController : UIViewController
{   
    __strong IBOutlet UIImageView *testImageView;
}

@implementation ViewController

- (void)viewDidLoad {
    [super viewDidLoad];
    // Do any additional setup after loading the view, typically from a nib.
    NSData *imageData = [[NSData alloc] initWithContentsOfURL: [NSURL URLWithString: @"http://news.bbcimg.co.uk/media/images/79790000/jpg/_79790768_hi024951574.jpg"]];
    // imageData => nil ???
    testImageView = [[UIImageView alloc] initWithImage:[UIImage imageWithData: imageData]];

}

@end

我不明白为什么imageData仍为零,即使网址存在。是因为我是从模拟器做的吗?感谢

更新

enter image description here 不完全确定为什么我得到NSFileReadUnknownError = 256

2 个答案:

答案 0 :(得分:2)

尝试使用您提供的代码,我对显示图像没有任何问题。

看起来问题出现在您的本地网络环境中。

我知道这可能听起来很愚蠢,但我鼓励你重置并重新启动iOS模拟器。我遇到了一个错误,阻止模拟器在睡眠和唤醒Mac后正确连接。 Xcode 6.1,Yosemite。

另外,请检查您是通过代理连接,还是关于 bbcimg.co.uk 域的/etc/hosts文件是否清楚。只是通常的理智检查。

答案 1 :(得分:0)

当您处理Web服务时,您需要权限来传输任意负载。 只需按照以下步骤操作: 1.转到p.list> rightClick> OpenAs> SourceCode 2.将以下行粘贴到我们的p.list源代码中:   (在附图中查找)enter image description here 3.运行你的程序&它完成了。