У меня есть решение.
На первом шаге в каждом разделе будет отображаться UIView, созданный - (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
, который будет сохранен в массиве.
Когда прокручивается TableView, я хочу освободить невидимое представление сечения, поэтомуМне нужно знать, какая секция видна или нет, следуйте коду функции, который будет обнаружен для этой цели, если вид видим, то освободите его.
-(BOOL)isVisibleRect:(CGRect)rect containerView:(UIScrollView*)containerView
{
CGPoint point = containerView.contentOffset;
CGFloat zy = point.y ;
CGFloat py = rect.origin.y + rect.size.height;
if (py - zy <0) {
return FALSE;
}
CGRect screenRect = containerView.frame;
CGFloat by = screenRect.size.height + zy ;
if (rect.origin.y > by) {
return FALSE;
}
return TRUE;
}
(rect
- это рамка раздела UIView
; containerView
- это UITableView
)
Таким образом, я могу получить видимые участки UITableView
, но я надеюсь, что SDK может предоставить API для этой цели напрямую.