[英]CATransaction Not Animating
我已經在XCode中創建了一個新的基於視圖的應用程序。
在ViewController中,我修改過的唯一代碼如下所示:
- (void)viewDidLoad {
[super viewDidLoad];
UIView *newView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 200, 200)];
newView.backgroundColor = [UIColor redColor];
[self.view addSubview:newView];
[CATransaction begin];
[CATransaction setValue:[NSNumber numberWithFloat:0.5f] forKey:kCATransactionAnimationDuration];
newView.layer.frame = CGRectMake(20,20,220,220);
[CATransaction commit];
}
它應創建一個紅色正方形,該紅色正方形將在應用程序加載后立即進行半秒的動畫處理。 問題在於它沒有動畫。 我不知道為什么。 我創建了這個簡單的項目來隔離所有變量,但仍然無法正常工作。
任何人都可以幫忙或為我指出一些Core-Animation閱讀材料的正確方向。 我已經經歷了蘋果公司的所有工作。
如果您在CALayer上設置屬性,則您的代碼將按預期進行動畫處理(默認情況下為動畫)。 為了使UIView動畫,必須在一個塊內更改其屬性,如下所示:
[UIView beginAnimations:nil context:NULL];
[UIView setAnimationDuration:1.0f];
// Change properties here
[UIView commitAnimations];
CATransactions用於對動畫進行分組,以便對其進行協調,或手動禁用一組對象的動畫。
任何人都可以幫忙或為我指出一些Core-Animation閱讀材料的正確方向。 我已經經歷了蘋果公司的所有工作。
請參閱: Mac OS X和iPhone的核心動畫:創建引人注目的動態用戶界面 ,以在視圖和圖層上出色地演練核心動畫。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.