Поместил ли вы флаг android: configChanges в замедление активности в своем манифесте?
Попробуйте:
<activity android:name="myActivity" android:label="@string/app_name"
android:configChanges="orientation">
</activity>
Если вы не хотите, чтобы какое-либо изменение макета при повороте вашего устройства, этого должно быть достаточно, и Android просто пересчитает и перерисовает представление снова.
Если вы хотите, чтобы макет был изменен, вам нужно загрузить другой макет в функцию onConfigurationChanged:
@Override
public void onConfigurationChanged(Configuration newConfig)
{
if (newConfig.orientation == android.content.res.Configuration.ORIENTATION_PORTRAIT)
{
setContentView(R.layout.portarit_view);
}
else if (newConfig.orientation == android.content.res.Configuration.ORIENTATION_LANDSCAPE)
{
setContentView(R.layout.landscape_view);
}
}
Кстати, вы можете иметь приличный предварительный просмотр того, как он будет выглядеть, на вкладке «Графический макет» в xml.