ios - 添加具有比例宽度的 subview 到 ScrollView

标签 ios swift uikit

我有一个 ScrollView ,其中包含三个 subview ,如下所示:

enter image description here

问题是,由于包含标签的堆栈 View 占 subview 总宽度的 80%,因此当用户滚动应用程序时,这看起来很奇怪:

enter image description here

如您所见,底部 ScrollView 中的 View 看起来不太好,因为宽度约束应用了 80% 乘数。用户滚动 ScrollView 的次数越多,“偏移”就越大。我想让 subview 始终居中。

如何在保持 80% 比例的同时保持 View 居中?

内容插入:

slideScrollView.contentSize.width = view.bounds.width * CGFloat(introArray.count)

subview 设置:

slideScrollView.addSubview(introView)
introView.frame = CGRect(x: view.bounds.width * CGFloat(index), y: 0, width: view.bounds.width, height: slideScrollView.frame.height)

堆栈 View 设置:

enter image description here

最佳答案

考虑这个 View 层次结构,其中每一行都是其下一行的父级...

|<------------contentSize.width---------->|  scroll view

|-----p0------|------p1-----|------p2-----|  pages

  |-------|      |--------|   |--------|     orange views, 80%

  |-------|      |--------|   |--------|     labels, center justified" 

关键是添加“页面”层,将 ScrollView 内容分为三部分。橙色 View 将其 80% 宽度应用于这些 View 。

关于ios - 添加具有比例宽度的 subview 到 ScrollView ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48612010/

相关文章:

ios - 循环保存到CoreData

ios - 无法将不可变值作为输入参数 : literals are not mutable, 传递,为什么?

objective-c - UINavigationBar 中的 UISearchBar 在 UIViewControllers 之间共享

iphone - 创建自定义 URL 方案操作

php - 使用纯 Swift、PHP 代码将视频上传到服务器

ios - 如何查看UILabel当前的字体大小?

ios - iOS Playgrounds 是否支持 UIView 动画?

ios - 测试目标中的用户定义build设置?

ios - 滚动 UICollectionView 时如何自定义在顶部屏幕上粘滞的标题 View ?

ios - 我在哪里可以找到官方手册中有关 iOS 图像文件命名的信息?