2016-02-23 2 views
0

У меня есть UIImageView, который я разместил в центре экрана, используя Align Center X и Align Center Y. Мне нужно, чтобы изображение перемещалось с анимацией вверху экрана, сохраняя горизонтальное выравнивание в контейнере и я нажимаю кнопку с 20-ю сверху. Удалить программное решение Align Center Y программно и добавить ограничение верхнего пространства - это хороший подход для этого?Ios Анимация UIImageView с ограничениями

+0

Попробуйте http://stackoverflow.com/a/12664093 – deadbeef

ответ

0

Динамически вычислять константу с классом UIScreen и высотой просмотра.

@interface ViewController : UIViewController 

@property (nonatomic, weak) IBOutlet NSLayoutConstraint *centerYConstraint; 
@property (nonatomic, weak) IBOutlet UIView *myView; 

- (IBAction)moveView:(id)sender; 

@end 


- (IBAction)moveView:(id)sender 
{ 
    self.centerYConstraint.constant = 20.0 + (self.myView.frame.size.height * 0.5) - ([UIScreen mainScreen].bounds.size.height * 0.5); 
    [UIView animateWithDuration:1.0 animations:^{ 
     [self.view layoutIfNeeded]; 
    }]; 
} 

Вы можете скачать здесь код (http://cl.ly/3l1B0k1L0h1C)

+0

Он работает как шарм! Большое спасибо! – user3734693

Смежные вопросы