Lo que tu buscas se llama Fragments, yo en mis aplicaciones tengo 1 sola Activity que no hace nada, ser un mero contenedor de Fragments, y luego cada Fragment se va intercambiando en la Activity.
¿Por qué hago esto? Porque si mañana quiero que mi app funcione en una tablet y poder mostrar 2 cosas simultáneamente lo único que necesito es que la Activity contenga a 2 Fragments, y en el código de los Fragments no tengo que cambiar nada.