Я признаю, что я новичок в Objective-C, но, думаю, зашел довольно далеко. Теперь у меня проблема, и мне нужна помощь.
В моем приложении я отображаю изображения в портретном режиме среди другой информации и хочу отображать их в полноэкранном режиме в ландшафтном режиме. Я узнал, что вы делаете это, определяя файл Landscape m, h и nib, и загружаете этот вид, когда устройство перемещается в альбомную ориентацию (работа с наблюдателем), верно?
В портретном режиме изображения в конечном итоге зависят от взаимодействия с пользователем, поэтому необходимо указать классу Landscape, какое изображение отображать. Я создал метод putImage в классе Landscape
-(void) putImage:(NSString *)theImage {
pict.image = [UIImage imageNamed: theImage];
NSLog(@"PICT %@",pict.image);
NSLog(@"IMAGE %@",theImage);
}
и назовите его из портрета, и вот вам вопрос:
NSString *actualImage = [NSString stringWithFormat:@"Picture%i.jpg",selected];
pict.image = [UIImage imageNamed: actualImage];
[landscapeViewController putImage:actualImage];
, который прекрасно работает каждый раз , кроме самого первого . Поэтому, что бы я ни делал, мне сначала нужно, чтобы приложение загрузило новое изображение, а также изменило альбомную ориентацию (изображение не отображается) любым способом. Затем после этого всегда работает отображение правильных изображений.
Я добавил отладочную информацию и увидел, что правильное изображение назначено пикту в ландшафтном классе - однако, похоже, его нужно отобразить, прежде чем оно действительно установит изображение.
Любая помощь, которую вы, ребята, могли бы оказать?