У меня есть приложение, которое нормально работает в App Store в течение 6 месяцев или около того, но ни одно из его изображений (загруженных с веб-сайта через "NSURLConnection initWithRequest") не отображается в iOS 4.3. Оказывается, у меня есть строка кода, которая выглядит следующим образом:
UIImage *img = [[UIImage alloc] initWithData:data];
и вскоре после этого, чтобы подготовиться к следующему изображению, я делаю это:
data.length = 0;
Когда я комментирую установку длины на ноль (откладывая ее до начала загрузки следующего изображения), она работает на iOS 4.3.
Я тщательно проверил, чтобы убедиться, что нет никаких буферных помех, но каждое из моих изображений в своем собственном экземпляре объекта, который имеет буфер (данные) в качестве переменной экземпляра.
Мне кажется, что в iOS 4.3 реализация initWithData не полностью завершена с данными, когда метод возвращается. Возможно, некоторая работа откладывается до тех пор, пока UIImage не будет назначен UIImageView, что происходит чуть позже? Может быть, даже отложено до визуализации UIImage?
Может кто-нибудь пролить свет на это, казалось бы, новое поведение в iOS 4.3?