Добавить CALayer в качестве подслоя и затем анимировать - PullRequest
1 голос
/ 04 мая 2009

вот что я хочу сделать: добавить CALayer в качестве подслоя в другой слой, а затем сразу же его анимировать. Слой добавляется с его позицией вне текущего вида и должен «летать» в вид. Все это происходит в UIViewController.

Вот как выглядит мой код:

mysublayer.position = CGPointMake(-160.0, -250.0);
[self.view.layer addSublayer:mysublayer];   

[CATransaction begin]; // outer transaction
[CATransaction setValue:[NSNumber numberWithFloat:2.0f]
                 forKey:kCATransactionAnimationDuration];

mysublayer.position = CGPointMake(160.0, 250.0);
mysublayer.opacity = 1.0;

[CATransaction commit]; 

Что происходит, так это то, что подслой сразу появляется в новой позиции (160 250) без анимации. Я думаю, что делаю что-то фундаментальное неправильно, и в тот момент, когда я пытаюсь анимировать слой, он на самом деле не добавляется в родительский слой, верно?

Итак, чтобы закончить, как мне анимировать новый подслой после добавления его в родительский слой?

Спасибо и всего наилучшего, Ганс

1 Ответ

0 голосов
/ 04 мая 2009

Вы должны использовать [CABasicAnimation animationWithKeyPath: @ "position"]

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...