ios - 动画期间 View Controller 中的中心图像

标签 ios iphone swift animation cgrectmake

我正在 Swift 中为我的应用程序创建一个启动屏幕,我遇到了一个问题,当我缩放图像时,它的大小从左上角开始,因此将整个图像从屏幕中央。

我尝试手动减去估计的运动差异(如下面的代码所示),但闭包中的第一行代码并未将图像保持在每个屏幕尺寸的中心。截至目前,它仅显示在 iPhone 6 Plus 屏幕的中央。

UIView.animateWithDuration(1.5, animations: { () -> Void in
      self.image.frame = CGRectMake((self.image.center.x)/2 - 20, (self.image.center.y)/2 + 20, 250, 250)         
})

是否有一行代码允许图像即使在缩放后也能在所有屏幕尺寸上保持居中?

提前感谢所有回复的人。

最佳答案

不要更改框架,而是更改边界。这使您可以更改大小,同时保持中心不变。将边界的原点保持在 0,0 并仅将边界大小宽度和高度更改为您想要的任何值。

关于ios - 动画期间 View Controller 中的中心图像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31331705/

相关文章:

swift - 使用 Swift 将特定键/值对保存到 Firebase 中的用户类

ios - 带有 UIButton : which button has been clicked? 的自定义 UITableViewCell

ios - 添加 CLLocationDistances

ios - 从 App Store 更新应用程序后,保存在应用程序中的图像会被删除吗?

iphone - 如何自定义MPMoviePlayerController?

iphone - Objective-C 中的单例共享数据源

ios - 数组包含方法无法与自定义模型和谓词一起正常工作

iphone - 如何根据 CGSize 更改缩放 CGPoint?

iphone - 如何将 Default.png 置于横向模式?

ios - 核心数据: How can I update a TableView field from an alert?