ios - ¿Cómo puedo probar si el encabezado UICollectionView se encuentra actualmente en la vista correcta?
objective-c uicollectionviewlayout (1)
Necesito saber si la vista suplementaria del encabezado UICollectionView está actualmente a la vista para forzar su actualización / actualización cuando se cambia una configuración / preferencia de la aplicación.
Si el encabezado no está a la vista, una vez desplazado, el encabezado se dibujará correctamente, pero ahora solo ocurre en la carga y si el usuario se desplaza fuera del encabezado, entonces vuelve.
Si el encabezado está a la vista, lo necesito para actualizar, pero realmente no quiero tener que volver a cargar toda la sección 0 cada vez que cambie esta configuración (solo cuando el encabezado esté a la vista ...).
Podría hacer algo así como mantener una propiedad cerca cuando la vista se descuelga. Luego cámbialo cuando desaparezca usando:
- (void)collectionView:(UICollectionView *)collectionView didEndDisplayingSupplementaryView:(UICollectionReusableView *)view forElementOfKind:(NSString *)elementKind atIndexPath:(NSIndexPath *)indexPath;
Dependiendo de cómo quiera que se produzca la actualización, puede mantener un bool visible o iniciar un NSTimer cuando aparece y detener el temporizador cuando desaparece.
Lamentablemente, no parece que haya un método visibleSupplementaryViews.