Measuring custom tab bar height fails for absolutely‑positioned elements
Los mantenedores suelen responder en 1 día
@mrpmohiburrahman ya está trabajando en esto.
Desde el 9/8/2026.
- #559 de @mrpmohiburrahman — abierto
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 35/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Estancado
- Stack tecnológico
- react-native, typescript
- Área
- mobile-dev
Línea de trabajo
Comienza con el código de TabView mostrado en el issue e inspecciona la medición de customTabBarWrapperRef en useLayoutEffect. Reproduce la configuración de bottom-tabs con la barra de pestañas personalizada posicionada absolutamente que se describe en los pasos y verifica después que la altura medida ya no sea cero ni incorrecta. El issue no proporciona ningún ejemplo reproducible ni archivo de prueba, así que localiza las pruebas o puntos de entrada relevantes de TabView antes de decidir qué cobertura es posible.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Before submitting a new issue
- I tested using the latest version of the library, as the bug might be already fixed.
- I tested using a supported version of react native.
- I checked for possible duplicate issues, with possible answers.
Bug summary
When using a custom tab bar with react-native-bottom-tabs, the library measures the tab bar height like this(in TabView):
useLayoutEffect(() => {
if (renderCustomTabBar && customTabBarWrapperRef.current) {
customTabBarWrapperRef.current.measure((_x, _y, _width, height) => {
setTabBarHeight(height);
});
}
}, [renderCustomTabBar]);
// …
{renderCustomTabBar ? (
<View ref={customTabBarWrapperRef}>
{renderCustomTabBar()}
</View>
) : null}
This works for most layouts, but breaks whenever the returned element is absolutely positioned, since absolutely‑positioned children don’t contribute to their parent’s measured size.
Library version
0.0.13
Environment info
I use expo
Steps to reproduce
-
Set up a bottom‑tabs navigator.
-
Provide a
renderCustomTabBarthat returns:<View style={{ position: 'absolute', bottom: 0, width: '100%', height: 60, backgroundColor: 'white', }} > {/* … */} </View> -
Observe that
setTabBarHeightis called with0(or an incorrect value).
Reproducible sample code
none
- Lenguaje dominante
- TypeScript
- Estrellas
- 1.5k
- Forks
- 108
- Merge medio
- 22 h 32 min
- PR fusionados (30 d)
- 8
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de callstack/react-native-bottom-tabs
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
callstack/react-native-bottom-tabs#593 ·
Los mantenedores suelen responder en 1 día
-
[iOS] Fabric: SIGABRT on tab press when tab key contains non-ASCII characters (kCFStringEncodingUTF8 passed to -cStringUsingEncoding:)Posiblemente ocupada @thiagobrez la tomó hace 48 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
callstack/react-native-bottom-tabs#560 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 3/5 1-2 días Aptitud para principiantes 72/100
callstack/react-native-bottom-tabs#596 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 48/100
callstack/react-native-bottom-tabs#592 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 68/100
callstack/react-native-bottom-tabs#591 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de callstack/react-native-bottom-tabs
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
microsoft/playwright#43327 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
microsoft/TypeScript#64758 ·
Los mantenedores suelen responder en 1 día
-
enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
opensearch-project/OpenSearch-Dashboards#12937 ·
Los mantenedores suelen responder en 2 días
-
Liveness marks block-included attesters live in the block's epoch instead of the attestation's epochAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
Los mantenedores suelen responder en 1 día
-
status: needs-triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
a2ui-project/a2ui#3158 ·
Los mantenedores suelen responder en 2 días