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