У меня есть UITableview с 2 разделами, 1 строкой в 1-м разделе и переменным количеством строк для второго раздела. Когда пользователь прокручивает таблицу вверх (палец перемещается вверх), тогда просмотр таблицы выполняет то же, что и по умолчанию, но когда пользователь находится наверху uitableview и прокручивает вниз (палец движется вниз), он должен выглядеть как первая ячейка Высота первой секции увеличивается по мере того, как пользователь прокручивает ее вниз (а при отпускании касания высота строки возвращается к исходной высоте 100). Я пытался
-(void)scrollViewDidScroll:(UIScrollView*)scrollView{
if(scrollView.contentOffset.y < 0){
[mainTable reloadRowsAtIndexPaths:[NSArray arrayWithObject:[NSIndexPath indexPathForRow:0 inSection: 0]] withRowAnimation:UITableViewRowAnimationNone];
}
}
-(CGFloat)tableView:(UITableView*)tableView heightForRowAtIndexPath:(NSIndexPath*)indexPath{
if(indexPath.section == 0 && tableView.contentOffset.y < 0){
return -tableView.contentOffset.y+100;//Default height is 100
}
}
но метод reloadRows сбрасывает contentOffset в 0, так что просмотр таблицы просто заикается, когда я опускаюсь. Кажется, что если это не сработает, то мне придется написать все на UIScrollView, и это кажется огромной болью без перерабатываемых клеток.
У кого-нибудь есть предложения?