为啥我的 UIView 在滚动时会在 UIScrollView 内移动?
Posted
技术标签:
【中文标题】为啥我的 UIView 在滚动时会在 UIScrollView 内移动?【英文标题】:Why is my UIView moving out of place inside UIScrollView when scrolled?为什么我的 UIView 在滚动时会在 UIScrollView 内移动? 【发布时间】:2016-07-20 22:18:25 【问题描述】:所以我在 Xcode 中做了一个测试项目,看看如何使用 UITextField
和 UILabel
s,它们是 UIView
的子视图。而UIView
是UIScrollView
的子视图。因此,在viewDidAppear
中添加视图和代码之后,当我向下滚动时,UIView
会移出位置。
这是问题的视频:https://drive.google.com/file/d/0B5j_BdtRjSyARWp3cGQ1dkMzMFk/view?usp=sharing
请告诉我我做错了什么。
override func viewDidAppear(animated: Bool)
super.viewDidAppear(animated)
scrollView.contentSize.height = 1000
scrollView.contentSize.width = view.frame.width
scrollView.showsHorizontalScrollIndicator = false
scrollView.showsVerticalScrollIndicator = false
scrollView.contentOffset.x = -8
scrollView.backgroundColor = UIColor.blackColor().colorWithAlphaComponent(0.25)
scrollViewChildView.backgroundColor = UIColor.blueColor().colorWithAlphaComponent(0.25)
【问题讨论】:
【参考方案1】:您尝试在使用自动布局系统定位视图后对其进行布局,因此在您将其强制为 layoutSubviews(拖动到底部)后,您的内容将按照您设置的指定偏移量移动它(x = -8 和 y = 0)。更多信息,参考this question
【讨论】:
以上是关于为啥我的 UIView 在滚动时会在 UIScrollView 内移动?的主要内容,如果未能解决你的问题,请参考以下文章
在 CellForRowAt 中包含用于自定义 UIView 的 nib 文件,在滚动时会产生 jerk