我使用CABasicAnimation對CALayer進行了動畫處理,並期望在動畫完成時圖層保持原位。幾乎所有的解決方案顯示了以下內容,工作正常正確的方法來防止CABasicAnimation中的消失層?
animation.removedOnCompletion = NO;
animation.fillMode = kCAFillModeForwards;
然而,2010年的WWDC揚聲器的核心動畫實踐第一部分(〜38-41mins)指出,一般的解決方案,以發現消失層的是「假的」,並以動畫層的正確方法大致如下
animation.fromValue = [NSNumber numberWithFloat:layer.position.y];
layer.position = CGPointMake(layer.position.y, endPoint);
animation.toValue = [NSNumber numberWithFloat:endPoint];
給出的理由是,removedOnCompletion /在fillMode解決方案只凍結了表示層,實際層仍然有其原來的位置上。
如果我誤解了說話者,請糾正我。
如果我正確地理解了他,它什麼時候重要?
謝謝,史蒂夫
感謝您的迴應 - 抱歉我的這裏有點慢。我可能從來沒有遇到需要做更多的表現層或實際層,這就是爲什麼我與這兩種方法掙扎。再次感謝。史蒂夫 – Steve 2013-04-24 16:37:17