具有约束的UIImageView的Ios动画

时间:2016-02-23 14:17:49

标签: ios objective-c animation uiimageview autolayout

我有一个UIImageView,我使用Align Center X和Align Center Y约束放置在屏幕中心。我希望图像随动画一起移动到屏幕顶部,保持容器中的水平对齐并且空间为20当我按下按钮时从顶部。以编程方式删除“对齐中心Y”约束并添加顶部空间约束是一种很好的方法吗?

1 个答案:

答案 0 :(得分: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