Активность Android повернута

У меня проблема с поворотом Activity после того, как я вернулся от другого, у которого другая ориентация экрана.

Позвольте мне описать шаги для воспроизведения этого поведения:

1.У меня в манифесте объявлено действие, подобное этому:

<activity
android:name = ".JobActivity"
android:label = "@string/title_activity_job"
android:screenOrientation = "portrait" />

Как видите, screenOrientation настроен на portrait.

  1. Внутри этого Activity я запускаю другое Activity со следующим намерением:

    Intent jobDetailsIntent = new Intent(mActivity, JobDetailActivity.class); startActivity(cameraIntent);

Эта ориентация экрана активности заявлена ​​как landscape.

<activity
android:name = ".JobDetailActivity"
android:screenOrientation = "landscape"
android:theme = "@style/ThemeFullscreen" />
  1. Activity JobDetailActivity при нажатии кнопки запускает другое Activity, ожидая результата.

startActivityForResult(getIntent(activity), requestCode);

Это другое действие объявлено как portrait.

<activity
android:name = ".QuestionsActivity"
android:screenOrientation = "portrait"
android:theme = "@style/ThemeFullscreen.Color" />
  1. Когда я получаю результат от этого другого действия и сделав пару вещей, я вызываю finish, чтобы вернуться к первому действию (JobActivity).
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (resultCode == RESULT_OK) {
    // Some other stuff
    this.finish();
}

}

На этом этапе, когда я возвращаюсь к JobActivity, я на секунду вижу Activity в landscape (помните, что он был объявлен как portrait), а затем возвращается в исходное положение.

Подводить итоги:

A (portrait) -> B (landscape) -> C (portrait)

После получения результата от C и возврата к B

A (portrait) -> B (landscape)

После звонка finish из B

A (landscape)

Через секунду

A (portrait)

Есть идеи, почему это может происходить? Спасибо вам всем, ваша помощь очень ценится.

На последних двух шагах: пока A находился в альбомной ориентации, занимал ли она только половину экрана с альбомной ориентацией, прежде чем она окончательно настроилась на портретную ориентацию?

ecle 06.12.2018 02:26

Он занимал весь экран в ландшафтном режиме.

Mauricio Flores 06.12.2018 16:14
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
Как вычислять биты и понимать побитовые операторы в Java - объяснение с примерами
В компьютерном программировании биты играют важнейшую роль в представлении и манипулировании данными на двоичном уровне. Побитовые операции...
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Поднятие тревоги для долго выполняющихся методов в Spring Boot
Приходилось ли вам сталкиваться с требованиями, в которых вас могли попросить поднять тревогу или выдать ошибку, когда метод Java занимает больше...
Полный курс Java для разработчиков веб-сайтов и приложений
Полный курс Java для разработчиков веб-сайтов и приложений
Получите сертификат Java Web и Application Developer, используя наш курс.
0
2
55
1

Ответы 1

Я не понимаю этот код:

Intent jobDetailsIntent = new Intent(mActivity, JobDetailActivity.class);
startActivity(cameraIntent);

Существует разница между названием объявления намерения и намерением, используемым для запуска действия.

Может проблема здесь.

Спасибо.

Ох, заткнись, я этого не заметил. Это точно jobDetialsIntent, а не cameraIntent. Извини за это.

Mauricio Flores 06.12.2018 16:13

Другие вопросы по теме