Кнопка перемещения вправо влево iOS - swift
Я создаю приложение с некоторыми кнопками в контроллере представления. Я хочу добавить одну анимацию, так как все кнопки перемещаются справа налево. Но все мои кнопки двигаются слева направо. Вот мой код
override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
b1_center_alignment.constant -= self.view.bounds.width;
b2_center_alignment.constant -= self.view.bounds.width;
b3_center_alignment.constant -= self.view.bounds.width;
b4_center_alignment.constant -= self.view.bounds.width;
b5_center_alignment.constant -= self.view.bounds.width;
}
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated);
UIView.animateWithDuration(0.5, delay: 0.0, options: UIViewAnimationOptions.CurveEaseOut, animations: {
self.b5_center_alignment.constant += self.view.bounds.width
self.view.layoutIfNeeded()
}, completion: nil)
UIView.animateWithDuration(0.5, delay: 0.3, options: UIViewAnimationOptions.CurveEaseOut, animations: {
self.b4_center_alignment.constant += self.view.bounds.width
self.view.layoutIfNeeded()
}, completion: nil)
UIView.animateWithDuration(0.5, delay: 0.6, options: UIViewAnimationOptions.CurveEaseOut, animations: {
self.b3_center_alignment.constant += self.view.bounds.width
self.view.layoutIfNeeded()
}, completion: nil)
UIView.animateWithDuration(0.5, delay: 0.9, options: UIViewAnimationOptions.CurveEaseOut, animations: {
self.b2_center_alignment.constant += self.view.bounds.width
self.view.layoutIfNeeded()
}, completion: nil)
UIView.animateWithDuration(0.5, delay: 1.2, options: UIViewAnimationOptions.CurveEaseOut, animations: {
self.b1_center_alignment.constant += self.view.bounds.width
self.view.layoutIfNeeded()
}, completion: nil);
}
Я очень новичок в разработке IOS. Пожалуйста, кто-нибудь, помогите мне решить эту проблему. Вот b1_center_alignment, b2_center_alignment
центральные горизонтальные ограничения от storyboard
,
1 ответ
Решение
Когда вы делаете
b1_center_alignment.constant -= self.view.bounds.width;
Вы прячете кнопку в левой части экрана, а затем с помощью
self.b5_center_alignment.constant += self.view.bounds.width
вы перемещаете его обратно в исходное положение
Вам нужно инвертировать сигналы
b1_center_alignment.constant += self.view.bounds.width;
и self.b5_center_alignment.constant -= self.view.bounds.width