NSViewAnimation - слишком медленно - PullRequest
1 голос
/ 27 марта 2011

Я довольно новичок в программировании Какао.У меня есть пользовательский вид (iBox), внутри которого есть еще 8 пользовательских видов другого класса (iCircle).Я хочу сделать анимацию, которая бы изменила размер iBox и переместила каждый из 8 iCircles на некоторое расстояние от определенной стороны iBox.

Я сделал это самым простым способом.Создает объект NSViewAnimation, который содержит 9 NSDictionaries, содержащих NSViewAnimationTargetKey, NSViewAnimationStartFrameKey, NSViewAnimationEndFrameKey для каждого из 8 iCircles и iBox.

Поэтому, когда я запускаю анимацию, она воспроизводится очень медленно, как слайд-шоу, но не анимация.Это похоже на 3D-игру, которая работает на очень старом GPU.Если я анимирую только iBox и 1 iCircle, он воспроизводится плавно.

Итак, мой вопрос: знаете ли вы, что именно вызывает такое поведение?Это большое количество словарей в объекте NSViewAnimation или большое количество iCircles.Может быть, они должны быть что-то вроде NSViewCells.Я где-то читал, что использование ячеек гораздо эффективнее, чем отдельные представления одного типа.

Каков наилучший способ оптимизировать анимацию, чтобы она была эффективной и работала плавно?

Я был бы очень признателен за любую помощь по этому вопросу.

...