-2

HMSegmentControl中,我在其中一个段视图中添加了 tableview。当我在当前部分并向上或向下滚动时,我注意到选项卡突出显示总是变为 0。为什么会发生这种情况?

这是我的滚动视图代码:

-(void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    CGFloat pageWidth = scrollView.frame.size.width;
    int page = scrollView.contentOffset.x / pageWidth;
    [self.chatSegment setSelectedSegmentIndex:page animated:YES];
    NSLog(@"scrollViewDidScroll - You are now on page %i",page);
}

日志值:

<UITableView: 0x128007e00; frame = (0 0; 320 568); clipsToBounds = YES; tag = 502; gestureRecognizers = <NSArray: 0x1276c2690>; layer = <CALayer: 0x1276c20e0>; contentOffset: {0, 2}; contentSize: {320, 570}>
4

1 回答 1

1

当表格在垂直方向滚动时,偏移量 y 值将发生变化,x 值将始终为 0。

所以在你的情况下,你应该参考scrollView.contentOffset.y

于 2016-08-26T14:11:44.547 回答