0

単一のデータソースからのデータを、列のように配置された2つの異なるテーブルに表示する必要があります。ここで、最初のuitableviewが行10までロードされる場合、次のuitableviewは行11から開始する必要があります。また、最初のuitableviewがスクロールする場合、次のuitableviewは最初のuitableviewに基づいてデータを自動スクロールする必要があります。

4

1 に答える 1

0

テーブルをロードするには、cellForRowAtIndexPathメソッドを使用し、タグを使用してテーブルを区別し、table1 の使用[array1 objectAtIndex:indexPath.row]と table2 の使用に使用できます[array1 objectAtIndex:indexPath.row+10]

さて、テーブルを一緒にスクロールすることについて。いくつかの方法を試しましたが、これで成功しました:

- (void)scrollViewDidEndDragging:(UIScrollView *)scrollView willDecelerate:(BOOL)decelerate
{

    NSArray *tableCells = [table1 visibleCells];

    if ([tableCells count] > 0) 
     {
        NSIndexPath *index = [table1 indexPathForCell:[tableCells objectAtIndex:0]];
        [table2 scrollToRowAtIndexPath:index atScrollPosition:UITableViewScrollPositionTop animated:YES];
     }
}

しかし、ここで何が起こるかというと、1 つのテーブルのスクロールが完了すると、2 番目のテーブルがスクロールを開始します。同時スクロールが必要な場合は、- (void)scrollViewDidScroll:(UIScrollView *)scrollView方法を試しましたが、必要に応じてスムーズに動作しませんでした。この解決策がお役に立てば幸いですが、より良い解決策が見つかった場合もお知らせください。

于 2011-10-05T07:25:09.493 に答える