Как я могу изменить свой вид в горизонтальной ориентации, а затем вернуться к портрету? - PullRequest
1 голос
/ 03 сентября 2010

Я хочу, чтобы мой вид изменился, когда он сменил горизонтальную ориентацию:

@Override
    public void onConfigurationChanged(Configuration newConfig) {
      super.onConfigurationChanged(newConfig);
      setContentView(R.layout.chartsactivity);
    }

Это работает, но я хочу, чтобы мой макет переключился обратно, когда он находится в портретном режиме.

Ответы [ 2 ]

1 голос
/ 03 сентября 2010

Чтобы позволить системе справиться с изменением макета, вы должны указать специальный макет для ландшафтного режима для файлов макетов, которые вы хотите выглядеть по-другому в ландшафтном режиме.Это делается через специальную папку для ландшафтных макетов.Просто поместите папку layout-land в папку ресурсов.Если ваше приложение работает в ландшафтном режиме, и такая папка присутствует, система сначала будет искать файлы макета в этой папке, и если макет не найден, вернитесь к стандартной папке макета.

0 голосов
/ 03 сентября 2010

Просто посмотрите на ориентацию newConfig и используйте разные макеты в каждом случае? Хотя было бы намного лучше, если бы вы позволили системе сделать это за вас.

...