设置框架未正确调整 UIView 的大小
Set Frame Not Sizing UIView Correctly
我一定是遗漏了一些与框架相关的东西 and/or 自动布局...我在一个 UIScrollView 中(技术上在一个滚动视图中的单个 "content" 视图),但是当我加载它并尝试设置框架时,大小与我指定的不匹配。我希望每个视图都是 250px x 200px,这是我的代码...
var i: CGFloat = 0
for package in packageList {
let view = UINib(nibName: "PackageDetail", bundle: nil).instantiateWithOwner(nil, options: nil)[0] as! UIView
view.frame = CGRectMake((i * 250), 0, 250, 200)
self.scrollSubView.addSubview(view)
i++
}
这是我得到的 - 看起来每个视图间隔 250 像素(根据需要),但它们更像是 420 像素宽 - 我添加了一个半透明的橙色背景作为插图。我明确指定它们的宽度为 250 像素,为什么会这样?故事板的其余部分使用自动布局,这些视图没有约束 - 我需要以编程方式添加一堆约束吗?
这不是您问题的答案,但我相信您应该使用 UICollectionView
来代替这个问题。
通过使用 UICollectionView
,您可以通过 UIScrollView
和子视图实现您想要实现的目标。
我一定是遗漏了一些与框架相关的东西 and/or 自动布局...我在一个 UIScrollView 中(技术上在一个滚动视图中的单个 "content" 视图),但是当我加载它并尝试设置框架时,大小与我指定的不匹配。我希望每个视图都是 250px x 200px,这是我的代码...
var i: CGFloat = 0
for package in packageList {
let view = UINib(nibName: "PackageDetail", bundle: nil).instantiateWithOwner(nil, options: nil)[0] as! UIView
view.frame = CGRectMake((i * 250), 0, 250, 200)
self.scrollSubView.addSubview(view)
i++
}
这是我得到的 - 看起来每个视图间隔 250 像素(根据需要),但它们更像是 420 像素宽 - 我添加了一个半透明的橙色背景作为插图。我明确指定它们的宽度为 250 像素,为什么会这样?故事板的其余部分使用自动布局,这些视图没有约束 - 我需要以编程方式添加一堆约束吗?
这不是您问题的答案,但我相信您应该使用 UICollectionView
来代替这个问题。
通过使用 UICollectionView
,您可以通过 UIScrollView
和子视图实现您想要实现的目标。