我正在使用此代码在ios中的注释视图上加载图像,但是annotationView.image = img;
行上的应用程序崩溃但没有任何错误消息可以帮助我吗?
dispatch_queue_t backgroundQueue = dispatch_queue_create("com.mycompany.myqueue", 0);
dispatch_async(backgroundQueue, ^{
NSString *url = [[NSString alloc]initWithString:[dict valueForKey:@"user_image_thumb"]];
NSString *trimurl=[url stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
UIImage *img = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:trimurl]]];
if (img!=nil) {
annotationView.image = img;
}
dispatch_async(dispatch_get_main_queue(), ^{
});
});
答案 0 :(得分:0)
怎么样
dispatch_async(dispatch_get_main_queue(), ^{
if (img) {
annotationView.image = img;
}
});
答案 1 :(得分:0)
@tuss是对的尝试:
dispatch_queue_t backgroundQueue = dispatch_queue_create("com.mycompany.myqueue", 0);
dispatch_async(backgroundQueue, ^{
NSString *url = [[NSString alloc]initWithString:[dict valueForKey:@"user_image_thumb"]];
NSString *trimurl=[url stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceCharacterSet]];
UIImage *img = [UIImage imageWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:trimurl]]];
dispatch_async(dispatch_get_main_queue(), ^{if (img!=nil) {
annotationView.image = img;
}
});
});