Próbuję dynamicznie ustawić wysokość nagłówków sekcji dla UICollectionView
, ale używając poniższego kodu, nic nie zmieniam. Widok jest narysowany prawidłowymi elementami, ale wysokość nie zmieni się. Przepraszam, jeśli to jest pytanie powtórzone, ale nie mogę znaleźć niczego związanego konkretnie z obiektem UICollectionView
. Z góry dziękuję.dynamicznie zmieniać wysokość UICollectionReuseableView (nagłówek sekcji kolekcji)
- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView
viewForSupplementaryElementOfKind:(NSString *)kind
atIndexPath:(NSIndexPath *)indexPath
{
PhotoVideoHeaderCell *headerView = [collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionHeader
withReuseIdentifier:@"videoHeaderView"
forIndexPath:indexPath];
if (indexPath.section == 0) {
// photos
[headerView setSection:@"Photo"];
} else {
[headerView.VehicleDetailView removeFromSuperview];
CGRect frame = headerView.frame;
frame.size.height = 60;
[headerView setFrame:frame];
[headerView setNeedsDisplay];
[headerView setBackgroundColor:[UIColor grayColor]];
[headerView setSection:@"Video"];
}
return headerView;
}
to działa, ale jak mogę powiedzieć, która część jestem edycji, chcę tylko robić to dla odcinka o indeksie 1 – DirtyKalb
Skorzystaj z Sekcją parametru ' w metodzie. Zapisz sekcję, którą edytujesz w ivar, a następnie porównaj. Jeśli nie są takie same, zwróć "headerReferenceSize" układu. –
przepraszam za bycie kompletnym noobem, ale nagłówekReferenceSize nie jest częścią kolekcjiViewLayout ... czy muszę utworzyć instancję nagłówka, aby odczytać ramkę? – DirtyKalb