Наличие загадочной проблемы.У меня есть универсальное приложение с большим количеством общего кода между версиями для iPad и iPhone.Существуют разные макеты в перьях, но в сущности одни и те же представления и иерархия представлений - один UIView используется в качестве контейнера для двух родственных UITextViews.
UIView mainView с дочерними элементами:
UITextViewpassTextView
UITextView notesTextView
Один UITextView скрыт, другой видим.
Ниже приведен мой код.Закомментированный раздел был моей первоначальной попыткой анимации.Это работало так же, как хотелось бы на iPad, но не на iPhone.Некомментированный раздел - дубль 2, используя метод, рекомендованный в документации.Некомментированный код не работает ни на iPad, ни на iPhone - он скрывает / скрывает мои представления, но без какой-либо анимации.Если я добавляю код в блок завершения, который также выполняется, он выполняет что-то, но не анимацию.
/*
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:mainView cache:YES];
passageTextView.hidden = YES;
notesTextView.hidden = NO;
[UIView commitAnimations];
*/
UIViewAnimationOptions options = UIViewAnimationOptionBeginFromCurrentState | UIViewAnimationTransitionFlipFromRight;
[UIView transitionWithView:mainView
duration:1.0
options:options
animations:^{ passageTextView.hidden = YES; notesTextView.hidden = NO; }
completion:NULL];
Редактировать : все еще работает над проблемой, надеясь, что у кого-то есть предложение.
Дополнительное обновление
Выяснили, почему в iPhone не работает следующее:
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0];
[UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:mainView cache:YES];
passageTextView.hidden = YES;
notesTextView.hidden = NO;
[UIView commitAnimations];
Я пренебрегал подключением представления кmainView в Интерфейсном Разработчике.Время отладки, и я только сейчас подумал проверить это.
Но я до сих пор не знаю, почему блоки анимации не работают ни для iPhone, ни для iPad.Я перепробовал несколько подходов, но у меня не получается никакой анимации, хотя шоу / шкуры работают.