Ошибка заставки Android - PullRequest
2 голосов
/ 12 января 2011

Я показываю заставку в течение примерно 3 секунд, прежде чем вызывается моя первая активность.Заставка также является действием, через 3 секунды она завершает работу () и запускает FirstActivity.Также я установил поворот экрана заставки «Активность» на портретное представление.

Теперь, когда я тестирую свое приложение, оно работает нормально, но в течение этих 3 секунд заставки, если я меняю поворот экрана, моя Первая активность вызывается дважды,

Есть ли какой-нибудь способ / фрагмент кода, который мог бы помочь мне открыть мою первую активность только один раз, несмотря на повороты экрана, когда Splash Screen Activity находится на переднем плане.?Спасибо за помощь :)

Ответы [ 4 ]

5 голосов
/ 12 января 2011

Это не совсем ошибка. Когда вы изменяете ориентацию, текущее действие создается снова, поэтому ваша SplashActivity вызывается дважды.

Я написал сообщение в блоге об обработке изменений ориентации вручную; http://c0deattack.wordpress.com/2010/12/25/dealing-with-screen-orientation-changes-manually/

3 голосов
/ 12 января 2011

У меня тоже была эта «ошибка». Здесь описывается, как я это решил: Активность перезагружается при изменении ориентации в Android

1 голос
/ 12 января 2011

Я думаю, что ваш поток заставки снова получает вызов.

, поэтому просто установите флажок для 2 проверочных экранов повернут или нет.если да, то не вызывайте эту тему снова.например.

логическое значение urScreenRotationFlag = false;

if (! urScreenRotationFlag) {код потока всплеска ur *

}

и при повороте экрана установите этот флаг2 верно.

Спасибо.

0 голосов
/ 12 декабря 2016

Вы можете решить эту проблему, добавив этот атрибут xml в Splash Активность в Mainfest

android:configChanges="orientation|keyboardHidden|screenSize"

, чтобы предотвратить повторное создание вашей активности при возникновении ориентации

...