iOS - анимация движения метки или изображения - PullRequest
13 голосов
/ 08 сентября 2010

Как я могу оживить движение метки или изображения? Я просто хотел бы сделать медленный переход из одного места на экране в другое (ничего особенного).

Ответы [ 3 ]

13 голосов
/ 11 сентября 2012

Для ios4 и более поздних версий не следует использовать beginAnimations:context и commitAnimations, так как они не рекомендуются в документации .

Вместо этого следует использовать один из методов на основе блоков.

Приведенный выше пример будет выглядеть следующим образом:

[UIView animateWithDuration:0.3 animations:^{  // animate the following:
    myLabel.frame = newRect; // move to new location
}]; 
12 голосов
/ 08 сентября 2010

Вы ищете -beginAnimations:context: и -commitAnimations методы для UIView .

В двух словах, вы делаете что-то вроде:

[UIView beginAnimations:nil context:NULL]; // animate the following:
myLabel.frame = newRect; // move to new location
[UIView setAnimationDuration:0.3];
[UIView commitAnimations];
3 голосов
/ 03 марта 2014

Вот пример с UILabel - анимация сдвигает метку слева за 0,3 секунды.

// Save the original configuration. 
CGRect initialFrame = label.frame;

// Displace the label so it's hidden outside of the screen before animation starts.
CGRect displacedFrame = initialFrame;
displacedFrame.origin.x = -100;
label.frame = displacedFrame;

// Restore label's initial position during animation. 
[UIView animateWithDuration:0.3 animations:^{
    label.frame = initialFrame;
}];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...