关于使用 UIScrollView
作为 subview 调整派生 UIView
的大小,我有一个大问题。
在 layoutSubviews
消息中,我设置了 UIScrollView subview 的框架。 UIScrollView
包含一个带有大图像的 UIImageView
,可以移动/收缩等。 UIScrollView
的初始contenSize
为初始图片大小。
到目前为止,还不错。图像的移动和捏合效果很好。现在我必须更改 UIView 框架(在我的应用程序中最大化 UIView)。我在动画 block 中执行此操作 (beginAnimations
/commitAnimations
)。所以我设置了新框架(这将更新宽度和高度),然后我调用 [myView layoutIfNeeded]
强制 UIScrollView 在 layoutSubviews
消息中更新其框架我的看法。
如果 UIScrollView
的 contentOffset
当前是 x 0, y 0
UIView
动画正确到它的新框架UIScrollView
框架将正确更新。但这是我的问题:如果 UIScrollView
的 contentOffset
大于 x 0, y 0
UIScrollView
将从左上角“滑入”到它的最终位置。
我希望 UIScrollView 根据父框架正确调整其框架的大小并正确对齐内容(在我的例子中是 UIImageView
)。但我怎样才能做到这一点?
最佳答案
经过几个小时的网络研究,我找到了这个问题的解决方案:
[UIView setAnimationBeginsFromCurrentState: YES];
这将为当前状态的所有层设置动画。
关于objective-c - 使用 UIScrollView subview 调整 UIView 的大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5333028/