Sobes.tech
Junior — Middle

¿Se llama necesariamente al método onDraw() al llamar al método requestLayout()?

sobes.tech AI

Respuesta de la IA

La llamada al método requestLayout() no garantiza una llamada inmediata a onDraw().

requestLayout() inicia el recálculo de la posición y tamaño de la vista, lo que implica la llamada a onMeasure() y onLayout(). Después de completar con éxito estas etapas, el sistema decide si necesita volver a dibujar la vista, y si es así, llama a onDraw().

Por lo tanto, onDraw() no se llama necesariamente justo después de requestLayout(), sino solo si los cambios requieren volver a dibujar.

Si necesita forzar una redibujación sin cambiar el tamaño o la posición, debe usar invalidate(), que conduce directamente a la llamada a onDraw().