2015-05-22 3 views
0

У меня есть NSView с белым текстом на черном фоне. Представление оживляет медленно вверх и вниз (+/- 10 пикселей каждые 1,5 секунды), и текст заметно мерцает во время анимации. Это не мерцает много, но достаточно, чтобы это было заметно при чтении. Я пробовал анимацию как с NSAnimationContext, так и с CABasicAnimation.Текст мерцает во время анимации на OSX

Это не происходит с тем же дизайном/анимацией на iOS, только на OSX. Это может иметь какое-то отношение к частоте обновления экрана, но это сводит меня с ума, и я решил, что попрошу на случай, если будет простое решение.

+0

Если вид заполняет границы, когда он рисует, вы переопределили '-isOpaque', чтобы вернуть true? Поддерживается ли слой с надписью? (Не уверен, что это подразумевается при использовании 'CABasicAnimation'.) Как выглядит код чертежа? Кроме того, какие свойства конкретно вы оживляете? –

+0

Да, попробовал установку 'isOpaque' и никаких улучшений. Представления все с поддержкой слоев. Я использую обычный старый «NSTextField» для текста на черном фоне «NSView». И я оживляю 'position.y' в' CABasicAnimation'/вертикальном ограничении AutoLayout в 'NSAnimationContext'. – bmueller

ответ

0

Я только что начал использовать Facebook Pop Animation framework в своем проекте, и когда я реализовал POPBasicAnimation для этой анимации, мерцание, похоже, полностью исчезло - даже для нежирного текста.

0

Эффект, который вы описываете, еще более выражен, если вы живите по диагонали. Я думал, что это может быть уменьшено, если включить shouldRasterize, но это не так. Кажется, что это должно быть сглаживание узких штрихов шрифта, поскольку изображение оживляет нецелые позиции во время анимации. Эффект с любопытством уменьшается, если вы используете жирный шрифт. Кроме того, проблема не связана с NSTextField, потому что если я сделаю снимок NSTextField, удалите текстовое поле и анимируйте NSImageView, мерцание все еще очевидно.

Нижняя линия, эффект уменьшен жирным шрифтом. Похоже, что должна быть функция сглаживания, которую можно отключить, но она ускользает от меня в этот момент.

+1

Ну, по крайней мере, я не схожу с ума. Думаю, мне придется полностью избавиться от этой анимации. – bmueller

Смежные вопросы