Llamadas de cambio de orientación de Android en Crear

He creado una pantalla de búsqueda que tiene una pestaña para palabras clave, filtros y un botón de búsqueda, y tres pestañas opcionales para los diferentes tipos de resultados (cada uno con unListView con unArrayAdapter) Al comenzar la actividad, el desarrollador puede pasar opcionalmente los resultados como un extraParcelable[] si la búsqueda ya se ha realizado En elonCreate() método Estoy creando cada una de las tres pestañas para elParcelable[] pasado a través.

Cuando llamo a una búsqueda desde el botón en la pestaña del filtro, borro las pestañas y las vuelvo a crear con los nuevos resultados, que funciona perfectamente. El problema es que cuando gira el dispositivo, parece que el soporte de cambio automático de orientación de Android recrea toda la actividad, llamandoonCreate(). Esto significa que mis resultados de búsqueda se restablecen aParcelable[] pasó al comenzar la actividad.

La única solución que he tenido hasta ahora es llamarfinish() entoncesstartActivity() esencialmente reiniciar la actividad con los nuevos resultados. Estoy seguro de que debe haber una solución mucho más simple y que he hecho algo extremadamente novato.

¿Hay una mejor manera de hacer esto?