使用界面构建器,您可以选择对象在调整大小时应该坚持的角落.你怎么能以编程方式做到这一点?
长话短说,我正在尝试构建类似于Photos.app的功能.
我有一个UIScrollView,里面有一个UIImageView,它在Storyboard中设置.缩放工作,但我无法保持中心.在我所有基于框架的滚动视图实现中,我将它集中在如下,它可以很好地工作:
- (void)scrollViewDidZoom:(UIScrollView *)scrollView {
CGRect newImageViewFrame = self.imageView.frame;
// Center horizontally
if (newImageViewFrame.size.width < CGRectGetWidth(scrollView.bounds)) {
newImageViewFrame.origin.x = (CGRectGetWidth(scrollView.bounds) - CGRectGetWidth(self.imageView.frame)) / 2;
}
else {
newImageViewFrame.origin.x = 0;
}
// Center vertically
if (newImageViewFrame.size.height < CGRectGetHeight(scrollView.bounds)) {
newImageViewFrame.origin.y = (CGRectGetHeight(scrollView.bounds) - CGRectGetHeight(self.imageView.frame)) / 2;
}
else {
newImageViewFrame.origin.y = 0;
}
self.imageView.frame = newImageViewFrame;
}
Run Code Online (Sandbox Code Playgroud)
但是使用自动布局它根本就没有.
我对UIScrollView或UIImageView没有任何限制,因为我不知道它们应该是什么.我想我应该将UIScrollView粘贴到四个角落,但是对于UIImageView我不完全确定,因为缩放改变了它的框架.
这是一个示例项目:http://cl.ly/21371H3q381N
如何使用自动布局进行缩放工作?