NSAnimationContext плохо себя ведет

У меня есть кнопка, которая вызывает главное окно, чтобы оживить его высоту, отображая некоторые опции в выпадающем меню. Кнопка (и ее брат) расположены в двух нижних углах окна, поэтому я хочу, чтобы они анимировались вниз с окном - будучи "заблокированными" на фиксированном расстоянии от нижнего края окна.

Проблема: кнопки анимируются должным образом, возможно, 1 из 10 раз - в остальное время они смещаются, по-видимому, случайным образом по оси Y. Кроме того, две кнопки имеют разные смещения - они не ведут себя одинаково, хотя код анимации одинаков.

Развернутая и запущенная на OSX 10.9 Mavericks анимация работает должным образом - там не плохо себя ведет.

Любые идеи о том, как получить следующий, простой код для работы на OSX < 10,9?

    [NSAnimationContext beginGrouping];
    [[NSAnimationContext currentContext] setDuration:0.2f];
    [[[self window] animator] setFrame:NSMakeRect([self window].frame.origin.x, [self window].frame.origin.y-EXTRA_HEIGHT, ORIGINAL_WIDTH, ORIGINAL_HEIGHT+EXTRA_HEIGHT) display:YES];
    [[_buttonOne animator] setFrameOrigin:NSMakePoint([_buttonOne frame].origin.x, CONSTANT_NUMBER)];
    [[_buttonTwo animator] setFrameOrigin:NSMakePoint([_buttonTwo frame].origin.x, CONSTANT_NUMBER)];
    [NSAnimationContext endGrouping];

0 ответов

Другие вопросы по тегам