Необходимо отображать данные из одного источника данных в две разные таблицы, расположенные так же, как столбцы. Здесь, если первый uitableview загружается до строки 10, следующий uitableview должен начинаться с строки 11, а также, если первый uitableview прокручивается, следующий uitableview должен автоматически прокручивать данные на основе первого.
ipad два UITableView с источником данных, связанным друг с другом
Ответы (1)
Что ж, для загрузки ваших таблиц вы можете использовать метод cellForRowAtIndexPath
и использовать теги для различения таблиц, а для таблицы 1 используйте [array1 objectAtIndex:indexPath.row]
, а для таблицы 2 используйте [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];
}
}
Но вот что произойдет, когда вы закончите прокручивать одну таблицу, ваша вторая таблица начнет прокручиваться. Если вам нужна одновременная прокрутка, я попробовал метод - (void)scrollViewDidScroll:(UIScrollView *)scrollView
, но он не работал должным образом. Если это решение поможет вам, я буду рад, но если вы найдете лучшее решение, дайте мне знать.
person
Dip Dhingani
schedule
05.10.2011
это действительно полезно, если массив одномерный, что, если он многомерный
- person kishore kumar; 05.10.2011
это отлично работает для простых таблиц, что, если у меня есть разделы и строки?
- person kishore kumar; 05.10.2011
Под многомерным массивом вы подразумеваете, что ваш массив содержит NSArray или NSDictionary в качестве своих объектов, потому что Objective C не имеет такой же концепции многомерного массива, как в C и C++.
- person Dip Dhingani; 05.10.2011
извините за неправильный комментарий, мой фактический смысл отражен в моем втором комментарии, где мои таблицы разделены на разделы и строки
- person kishore kumar; 05.10.2011
то это может многое изменить. Но если у вас есть только одна строка в каждом разделе, и вы просто используете разные разделы для целей графического интерфейса, это ничего не изменит. Но если у вас есть переменное количество строк в каждом разделе, вам придется разделить таблицы в соответствии с имеющимся у вас массивом. Но будет сложно точно.
- person Dip Dhingani; 05.10.2011