【问题标题】:UITableView auto-scrolls simultaneously according to another UITableViewUITableView 根据另一个 UITableView 同时自动滚动
【发布时间】:2012-04-18 02:22:38
【问题描述】:

有没有可能做出这样的效果:

当我滚动一个 UITableView 时,另一个 UITableView 会根据我移动的 UITableView 同时自动滚动。

NS:由于某些原因,无法将两个 UITableView 合并到一个 UITableView 中...

谢谢。


我找到了一种方法并进行了测试。只是我不确定这是否是一个好方法。 如下执行 UIScrollViewDelegate 的 scrollViewDidScroll。 但是我必须取消选中弹跳效果,因为它会使 scrollViewDidScroll 被多次调用一次滚动...

- (void)syncTableViews:(UIScrollView *)whatScrollView
{
    int tmpDesY = whatScrollView.contentOffset.y;
    BOOL tmpNeedSetTv00 = NO;
    BOOL tmpNeedSetTv01 = NO;
    BOOL tmpNeedSetTv02 = NO;

    if(whatScrollView == self.TableView00)
    {
        tmpNeedSetTv01 = YES;
        tmpNeedSetTv02 = YES;
    }
    else if(whatScrollView == self.TableView01)
    {
        tmpNeedSetTv00 = YES;
        tmpNeedSetTv02 = YES;
    }
    else if(whatScrollView == self.TableView02)
    {
        tmpNeedSetTv00 = YES;
        tmpNeedSetTv01 = YES;
    }

    if(tmpNeedSetTv00 == YES)
    {
        [self.TableView00 setContentOffset:CGPointMake(self.TableView00.contentOffset.x,tmpDesY) animated:NO];
    }    
    if(tmpNeedSetTv01 == YES)
    {
        [self.TableView01 setContentOffset:CGPointMake(self.TableView01.contentOffset.x,tmpDesY) animated:NO];
    }
    if(tmpNeedSetTv02 == YES)
    {
        [self.TableView02 setContentOffset:CGPointMake(self.TableView02.contentOffset.x, tmpDesY) animated:NO];
    }
}

- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
    [self syncTableViews:scrollView];
}

【问题讨论】:

    标签: uitableview autoscroll simultaneous


    【解决方案1】:

    作为委托 UIScrollView 的 UITableView,将 UIScrollViewDelegate 添加到您的类中 只需使用:

    -(void)scrollViewDidScroll:(UIScrollView *)scrollView
    {
        UIScrollView *otherScrollView = (scrollView == self.tableViewHours ) ? self.tableViewDay : self.tableViewHours;
        [otherScrollView setContentOffset:[scrollView contentOffset] animated:NO];
    }
    

    问候。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-12-07
      • 2019-09-28
      • 1970-01-01
      • 2013-02-05
      • 1970-01-01
      • 2020-12-06
      • 1970-01-01
      相关资源
      最近更新 更多