tvOS:UIScrollView 不滚动
tvOS: UIScrollView doesn't scroll
我正在尝试以本地方式重现 TVML 模板,该模板提供超出屏幕边界的可点击图像网格。我正在尝试使用滚动视图,但我无法 select 添加到滚动视图但在其可见区域之外的元素。
为简单起见,使用按钮的sketch代码如下:
let dim = 50
for i in 0..<10 {
for j in 0..<10 {
let frame = CGRect(x: i * (dim + 10), y: j * (dim + 10), width: dim, height: dim)
let button = UIButton(type: .System)
button.frame = frame
myScrollView.panGestureRecognizer.allowedTouchTypes = [UITouchType.Indirect.rawValue]
myScrollView.addSubview(button)
}
}
滚动视图的大小使得这些按钮中只有一半可见。为什么滚动视图不滚动到该区域外的按钮(使用 Siri 遥控器)?
我认为 panGesture touchType 可能有帮助,但它没有。
我是否漏掉了一些明显的东西?
将 contentSize 属性 设置为您的滚动视图。确保所有组件都在给定的内容大小范围内。
myScrollView.contentSize = CGSizeMake(1880, 2000)
实际上只使用 UICollectionView
会容易得多。如果将图像添加到每个单元格,在将集合视图调整为所需内容后,您将获得所需的行为。
本教程解释了它的工作原理。 http://www.brianjcoleman.com/tutorial-collection-views-using-flow-layout/
我正在尝试以本地方式重现 TVML 模板,该模板提供超出屏幕边界的可点击图像网格。我正在尝试使用滚动视图,但我无法 select 添加到滚动视图但在其可见区域之外的元素。
为简单起见,使用按钮的sketch代码如下:
let dim = 50
for i in 0..<10 {
for j in 0..<10 {
let frame = CGRect(x: i * (dim + 10), y: j * (dim + 10), width: dim, height: dim)
let button = UIButton(type: .System)
button.frame = frame
myScrollView.panGestureRecognizer.allowedTouchTypes = [UITouchType.Indirect.rawValue]
myScrollView.addSubview(button)
}
}
滚动视图的大小使得这些按钮中只有一半可见。为什么滚动视图不滚动到该区域外的按钮(使用 Siri 遥控器)? 我认为 panGesture touchType 可能有帮助,但它没有。 我是否漏掉了一些明显的东西?
将 contentSize 属性 设置为您的滚动视图。确保所有组件都在给定的内容大小范围内。
myScrollView.contentSize = CGSizeMake(1880, 2000)
实际上只使用 UICollectionView
会容易得多。如果将图像添加到每个单元格,在将集合视图调整为所需内容后,您将获得所需的行为。
本教程解释了它的工作原理。 http://www.brianjcoleman.com/tutorial-collection-views-using-flow-layout/