2013-06-10 4 views
0

У меня есть NSView в моем проекте, который я хочу переместить, но анимация, которую я обычно использую для других объектов, не работает с ней ... что мне делать, чтобы заставить ее двигаться ? Вот мой код:Почему аниматор NSView не работает в Cocoa

[[NSAnimationContext currentContext] setDuration:1.0]; 
NSRect rect = NSMakeRect(59.0,10.0,682.0,575.0); 
[[self.myView animator] setFrame: rect]; 
+0

Ну, что происходит вместо этого? (И вы подтвердили, что 'self.myView' не' nil', и что кадр, который вы жестко закодировали, отличается от существующего фрейма?) –

+0

Вместо анимации ничего не происходит ... но я попытался выполнить этот код один и да, он работает ... он не работает, когда я вызываю его после выполнения IAP ... и теперь я заметил, что иногда я получаю предупреждение в панели журнала: «CoreAnimation: предупреждение, удаленная нить с незафиксированным CATransaction, установите CA_DEBUG_TRANSACTIONS = 1 в среде для регистрации обратных трасс. «... Я понятия не имею, что это может означать ... – Blue

+0

Что вы подразумеваете под« после того, как я выполнил IAP »? Какой у вас этот код? –

ответ

1

я нашел способ заставить его работать ... По какой-то причине анимация работала при вызове в одиночку, но не работает при вызове после ИАПА ... я узнал что вызов void с анимацией с этой строкой кода заставлял ее работать:

[self performSelectorOnMainThread:@selector(myAnimation) withObject:nil waitUntilDone:NO];