【发布时间】:2018-09-26 19:15:07
【问题描述】:
我需要使用 IB 实现以下布局
http://www.giphy.com/gifs/tK0FNSHglOSyg8sVWx
我目前正在使用以下结构
UIScrollView
- Content View (UIView)
- Image Slider (FSPagerView)
- Clinic Name (UILabel)
- Clinic Slogan (UILabel)
- Line Separator View
- Clinic Profile (UITextView)
- Section View (Custom UIView)
- Doctors View (UICollectionView) - Horizontal Scrolling
IB的PFB截图
它为我呈现以下屏幕
http://www.giphy.com/gifs/fxkcxS2GbJCCQcaiCD
正如您在上面的 GIF 中看到的,布局正在工作,但是我很难让 Collection View 在 UIScrollView 内水平滚动
我的问题是
- 如何让 UICollectionView 在 UIScrollView 中水平滚动
- 如果在 UIScrollView 中添加 UICollectionView 不是一个好主意,我应该使用什么组件来实现我想要实现的布局? (如果你能帮助这个想法)
PS:我尝试了 StackOverflow 和其他来源的几乎所有解决方案,以使 UICollectionView 在 UIScrollView 内可滚动,但没有任何效果,但是我已经以编程方式实现了类似的布局(没有 IB 和自动布局),它可以工作,供您参考,这里是我正在使用的工作代码https://iswift.org/playground?dmHCmv&v=3
谢谢。
【问题讨论】:
-
您的收藏视图上的约束是如何设置的?宽度是否限制为滚动视图的宽度?您使用的是默认流布局还是自定义?
-
你能分享你的代码和xib吗?您尝试设置:(内容视图)。 clipsToBounds = true,我想你不会看到 CollectionView。
-
@NguyenHoan 我稍后会尝试分享。我尝试在 ScrollView 中使用 CollectionView 和一个使用 IB 的新(测试)项目,它可以工作,这似乎肯定是 Autolayout 或相关的问题。
-
@NguyenHoan 是的,我尝试将 clipsToBound = true 设置为内容视图,正如您所说,集合视图不显示,但其余内容显示,为什么会这样?
-
我认为您的约束不正确-> UIScollView 的 contentsize 高度不足以显示 collectionview。详细介绍
标签: ios swift uiscrollview uicollectionview