TVOS - 在滚动视图中使用集合视图,但是滚动视图无法滚动。

3

我有一个CollectionView,它在ScrollView中的ContentView中。

如果我到达被隐藏的第二行Collectionview时,ScrollView似乎不能向上滚动以显示第二行。可能是焦点导致这种情况,只是不确定如何处理。

谢谢!


确保您的集合视图上的约束使滚动视图的内容视图大于滚动视图本身。除非这样做,否则滚动视图将无法滚动。 - NSGangster
@MatthewLawrenceBailey 内容视图比具有正确内容的滚动视图要大。如果我允许通过遥控器滚动视图,我可以在视图上滚动,但如果我只是将焦点集中到集合视图中下一行项目上,滚动视图不会自动滚动。 - John D
你是否在集合视图上禁用了“滚动启用”? - Jeroen Bakker
@JeroenBakker 我没有禁用它 - 它是启用的。 - John D
一个非常愚蠢和恼人的错误是忘记在集合视图上选择“水平”!!!!! - Fattie
2个回答

1

我解决了同样的问题,通过禁用特定UICollectionView上的“Scrolling Enabled”选项。

现在,当UICollectionViewCell聚焦时,它可以正常滚动。

我知道这不是理想的解决方案,但对我来说似乎是一种错误。

禁用滚动

希望这可以帮到你。我仍在寻找没有限制的解决方案。


0

作为对 tomaspavlic之前答案的改进,如果您有一个在现有UICollectionViewCell(垂直滚动的UICollectionView)内水平滚动的UICollectionView,您可以将以下内容作为父单元格的一部分实现:

- (void)didUpdateFocusInContext:(UIFocusUpdateContext *)context withAnimationCoordinator:(UIFocusAnimationCoordinator *)coordinator
{
    self.collectionView.scrollEnabled = [context.nextFocusedView isDescendantOfView:self];
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接