Android guardar vistas creadas programáticamente

Yo creo programáticamente un RelativeLayout con algunas otras vistas dentro de él y lo agrego al padre que está definido en XML. Pero todas las vistas (incluido el diseño) que se crearon desaparecen programáticamente una vez que se vuelve a crear la actividad. ¿Necesito un objeto SharedPreferences para guardar los valores y luego volver a crear el diseño o hay una forma más fácil de guardarlo?

PD todas las nuevas vistas creadas obtienen una identificación asignada

Respuestas a la pregunta(2)

Su respuesta a la pregunta