2017-03-01 68 views
0

我正在寻找使用UITableView重现Netflix的tvOS应用程序的滚动行为。使滚动的tvOS tableview行保持固定位置

当您在Netflix上滚动应用程序的项目时,焦点行和即将到来的行总是处于相同的位置。

使用UITableView的默认行为,焦点行的位置根据行不同而不同。

我怎么能做到这一点?

回答

0

UIScrollViewDelegate方法scrollViewWillEndDragging:withVelocity:targetContentOffset:将允许你控制哪些内容抵消滚动视图,焦点引擎集:如果调整的targetContentOffset参数指向,则焦点引擎将有滚动值。

所以,你应该实现方法,以及使用任何你想计算一下正确的偏移应该是,然后将该值设置在指针:

- (void)scrollViewWillEndDragging:(UIScrollView *)scrollView withVelocity:(CGPoint)velocity targetContentOffset:(inout CGPoint *)targetContentOffset 
{ 
    CGPoint defaultOffset = *targetContentOffset; 
    CGPoint newOffset = myFunctionThatAdjustsTheOffset(defaultOffset); 
    *targetContentOffset = newOffset; 
} 
+0

这确实神奇。谢谢! –