#ios #objective-c #xcode #web-services
#iOS #objective-c #xcode #веб-сервисы
Вопрос:
Я извлекаю свое изображение через веб-службу. Этот веб-сервис выдает мне URL, который я преобразую в изображение с помощью нескольких строк кода. По какой-то причине все изображения хорошо отображаются в симуляторе, но изображения НЕ отображаются на устройстве. Я попробовал жесткое кодирование в изображении .png, и оно отлично отображалось на устройстве. Кажется, что все изображения на устройстве не будут отображаться, если они не в формате .png. Вот мой код для преобразования URL-адреса в изображение:
NSString *imgurlString = bestPageDictionary[@"image_url"];
NSURL *imageURL = [NSURL URLWithString:imgurlString];
NSData *imageData = [NSData dataWithContentsOfURL:imageURL];
UIImage *imageForCell = [UIImage imageWithData:imageData];
[dVC setItemDisplayImage:imageForCell];
Когда я NSLog строку URL, я получаю это в качестве ответа: (для одного из элементов)
^ Это изображение отображается в симуляторе, но не на устройстве.
Любая помощь приветствуется, заранее спасибо
РЕДАКТИРОВАТЬ: Эти изображения не отображаются на моем устройстве iPhone 5
Комментарии:
1. На каком устройстве вы его запускаете? Я открываю изображение на своем 4s
2. Он не запущен на iPhone 5
3. Я тестировал на своем iPhone5S с указанным вами URL. Это сработало очень хорошо.
4. Вот код, который я тестировал. Это то же самое, что и у вас UIImageView * ImageView = [[UIImageView alloc] initWithFrame:self.view.bounds]; NSData *data = [NSData dataWithContentsOfURL:[NSURL URLWithString:@» image-tmart.com/prodimgs/8/87004392 / … ; UIImage *image_ = [UIImage imageWithData: данные]; [ImageView setImage:image_]; [self.view добавляет SUBVIEW:ImageView];
5. ДА. это сработало. Ваша сеть слишком медленная? Существуют методы делегирования для получения NSData. Попробуйте проверить статус.
Ответ №1:
Проверьте точное расширение вашего изображения,
в симуляторе кажется, что my_pic.jpg
и my_pic.JPG
похожи, в то время как на реальном устройстве.