Как заставить представление отображать себя?

В моем приложении у меня есть несколько небольших вложенных представлений . Когда пользователь касается подпредставления, я помещаю одно отдельное представление поверх затронутого подпредставления (того же размера), а затем анимирую это отдельное представление до полноэкранного размера.

Увеличенное представление нарисовано на заказ, что создает большой проблема с этим подходом. Если я создам увеличивающийся вид в основном виде ' s viewDidLoad и устанавливает для его кадра полноэкранный размер, метод представления drawRect вызывается немедленно, и представление правильно отображается в полноэкранном режиме. Если я затем использую это представление в анимации, все будет работать так, как ожидалось.

Однако мне нужно, чтобы это увеличенное представление отличалось в зависимости от того, какое подпредставление было задействовано, поэтому мне нужно каждый раз заново создавать / перерисовывать его. Проблема в том, что когда я делаю это в ответ на событие касания, метод представления drawRect не вызывается до тех пор, пока не начнется анимация, и тогда кадр представления будет маленьким, а не полноэкранным, и поскольку в результате все отображается неправильно.

В моем коде для события касания я явно устанавливаю полноэкранный режим просмотра и вызываю setNeedsDisplay перед запуском анимации, Из таблицы ?

25
задан hippietrail 3 September 2012 в 18:49
поделиться