我从网络服务器下载图像(.jpg),然后在UIImageView中全屏显示。在模拟器中,图像显示正确,但是当我在iPod(iOS 4.3.2)上加载应用程序时,我得到一个空白页面。我从NSURLConnection获取图像的NSData,然后使用以下代码在viewDidLoad中设置它:
UIImage *map = [UIImage imageWithData:theData];
mapView.image = map;
我的mapView是在Interface Builder的UIView中没有图像的情况下设置的。我还有一个没有在设备上显示的工具栏,就像它在模拟器上按预期显示的UIImageView一样。有没有人见过类似的行为?
答案 0 :(得分:0)
您会尝试使用此代码吗?
- (void)viewDidLoad {
UIImage *img = [[UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:@"http://xxxxxxx/xxxx.jpg"]]] retain];
if (img != nil) {
mapView.image = img;
[img release];
}
[super viewDidLoad];
}
对你来说可能不太好,但只是试一试......
答案 1 :(得分:0)
我不确定问题是什么,但我放弃了Interface Builder并手动添加了ImageView,它现在显示正确。
答案 2 :(得分:0)
尝试使用ARC:
NSURL * url = [NSURL URLWithString: @ “http://clasificados.eluniversal.com/imagenes/inmuebles/home/home_inmuebles.jpg”];
UIImage *img = [[UIImage alloc] initWithData:[NSData dataWithContentsOfURL:url]];
if (img != nil) {
mapView.image = img;
img = nil;
}