Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios hmsegmentedcontrol-当我滚动时,选项卡高亮灯始终更改为0。为什么?_Ios_Objective C_Uiscrollview_Uisegmentedcontrol_Contentoffset - Fatal编程技术网

Ios hmsegmentedcontrol-当我滚动时,选项卡高亮灯始终更改为0。为什么?

Ios hmsegmentedcontrol-当我滚动时,选项卡高亮灯始终更改为0。为什么?,ios,objective-c,uiscrollview,uisegmentedcontrol,contentoffset,Ios,Objective C,Uiscrollview,Uisegmentedcontrol,Contentoffset,在中,我在一个段视图中添加了tableview。当我在当前区域上向上或向下滚动时,我注意到标签高亮显示总是变为0。为什么会这样 这是我的scrollView代码: -(void)scrollViewDidScroll:(UIScrollView *)scrollView { CGFloat pageWidth = scrollView.frame.size.width; int page = scrollView.contentOffset.x / pageWidth;

在中,我在一个段视图中添加了tableview。当我在当前区域上向上或向下滚动时,我注意到标签高亮显示总是变为0。为什么会这样

这是我的scrollView代码:

-(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}>

当表格沿垂直方向滚动时,偏移量y值将改变,x值始终为0


因此,在您的情况下,您应该参考
scrollView.contentOffset.y

我们不知道什么是HMSegmentedControl!您是否记录了页面值?滚动时是0吗?我将scrollView.contentOffset.x设置为0。这使得段选择0索引。您是否在问为什么scrollView内容偏移量为0?是的。为什么会变成0你应该添加更多细节。scrollview内容大小是多少?