Как настроить анимацию встряхивания в UIImageView IOS
Я кодирую функцию встряхивания изображения, и код ниже:
CABasicAnimation* shake = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];
shake.fromValue = [NSNumber numberWithFloat:-0.2];
shake.toValue = [NSNumber numberWithFloat:+0.2];
shake.duration = 0.1;
shake.autoreverses = YES;
shake.repeatCount = 4;
[self.imageView.layer addAnimation:shake forKey:@"imageView"];
self.imageView.alpha = 1.0;
[UIView animateWithDuration:2.0 delay:2.0 options:UIViewAnimationOptionCurveEaseIn animations:nil completion:nil];
У меня есть два вопроса:
1. приведенный выше код потрясет изображение вокруг его центра (transform.rotation.z). Но как заставить изображение дрожать вокруг нижнего центра?
2.Как я могу контролировать запуск и остановку этой потрясающей анимации? Например, заставляйте изображение дрожать, пока не получите данные с сервера, и остановите анимацию.
1 ответ
Вы можете сделать это, изменив изображение. Сделайте его в два раза выше, но дно должно быть прозрачным.
Аналогичное решение, которое использует только код: ImageView
в другую точку зрения... назвать это imageHolderView
где imageHolderView
в два раза выше, чем изображение, но в остальном оно просто прозрачное, а затем встряхните его вместо вашего изображения