メインウィンドウをトリガーして高さをアニメーション化するボタンがあり、プルダウンメニューにいくつかのオプションが表示されます。ボタン(およびその兄弟)はウィンドウの2つの下隅に配置されているため、ウィンドウの下の端から一定の距離で「ロック」されて、ウィンドウと一緒にアニメーション化する必要があります。
問題:ボタンはおそらく 10 回に 1 回は適切にアニメーション化されますが、残りの時間は y 軸上でランダムにずれているように見えます。その上、2 つのボタンは異なるオフセットを取得します。アニメーション コードは同じですが、動作は同じではありません。
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];