Swift AutoLayout:UIScrollView 内的 UITextViews 让人头疼
Posted
技术标签:
【中文标题】Swift AutoLayout:UIScrollView 内的 UITextViews 让人头疼【英文标题】:Swift AutoLayout: UITextViews inside UIScrollView headache 【发布时间】:2019-06-29 20:14:43 【问题描述】:我正试图了解UIScrollViews
的工作原理,虽然已经有一些很好的答案,但它们似乎没有涵盖UITextViews
,所以我想知道是否有人可以告诉我更多关于什么UITextViews 需要在 UIScrollView 中工作。我的设置如下图所示,但我收到的错误是 ScrollView 没有高度或宽度限制。
如果可以的话,我将不胜感激,如果您能详细说明为什么这不起作用以及 TextViews 在放置在 ScrollViews 中时有什么要求。
【问题讨论】:
嗨,你能和我们分享这个故事板吗,它会更容易检测出真正的问题,但首先尝试从属性检查器中的 UITextView 中删除"Scrolling Enabled"
复选标记
嘿 @Andrew isScrollable 在 textviews 上被禁用。你可以在这里看到完整的故事板:dropbox.com/s/g7q1lbj0pxx14jh/Main.storyboard?dl=0
【参考方案1】:
所以https://www.dropbox.com/s/gujry7ngziaipm7/Main.storyboard?dl=0 这里是固定的变体。 我发现了一些错误:
Title Input
的顶部约束是从另一个层次结构查看
Content View
- 您在 UIScrollView 中的根视图没有 x、y 约束,因此我添加了尾随、底部、顶部和前导约束。
也许还有一些提示:
你的约束应该是相对的,所以你不需要从Safe Layout
偏移所有视图。
尝试将您的viewControllers
分隔到不同的 Storyboard 文件中,否则如果您要在团队中工作,在 git 中修复合并问题将是一件非常头疼的事情)
希望它对您的项目有所帮助)
【讨论】:
除了你的建议之外,我设法通过修复另一个问题来解决它:容器视图和滚动视图之间相等宽度的优先级设置为 250,它应该是 1000。只有等高需要 250。再次感谢。以上是关于Swift AutoLayout:UIScrollView 内的 UITextViews 让人头疼的主要内容,如果未能解决你的问题,请参考以下文章
Swift + Autolayout:旋转 UILabel,保持在 UIView 旁边
swift-无法使用 AutoLayout 在 UIScrollView 中居中 UIImageView
swift CollectionViewCell的Autolayout
使用 Swift (AutoLayout) 固定 UIImage 的宽度和高度