Обмен NSViews с помощью push-перехода - PullRequest
2 голосов
/ 08 января 2011

Я пытался понять это некоторое время, но я не могу понять это. Как бы я поменял местами два NSView с помощью push-перехода (например, что UINavigationController делает на iOS)? Что я пробовал до сих пор:

  • Использование подкласса NSAnimation <- слишком медленно </strong>
  • Использование NSViewAnimation и MGViewAnimation <- слишком медленно </strong>
  • Использование прокси аниматора NSView <- слишком медленно </strong>
  • Использование CATransition <- я не могу использовать это, потому что CATransition требует, чтобы представления были зарезервированы для слоя, а представления для подложки слоя вызывают сбои при визуализации текста, а также различные другие графические артефакты </strong>

Ответы [ 2 ]

0 голосов
/ 18 марта 2011

Кажется, что анимация медленная, потому что я оживляю довольно большой вид. Я не думаю, что есть что-то еще, кроме старого доброго трюка с обменом изображениями (создание изображения вида и его анимация вместо самого представления).

0 голосов
/ 24 февраля 2011

Первые 3 варианта, вероятно, слишком медленные, потому что вы пытаетесь использовать их без поддержки слоев ваших представлений. Чтобы сделать анимацию в AppKit, вам понадобится подкрепить свои представления слоями.

...