Intereting Posts

При изменении ориентации экрана создается новая активность

Я относительно новичок в Android, но за последний год сделал несколько приложений, поэтому простите меня.

Я знаю, что когда вы используете приложение на устройстве и меняете ориентацию экрана, поворачивая устройство, отображаемая активность полностью воссоздается. Я иду в приложение youtube (я использую Nexus 7 w / Android 4.2.2) и воспроизвожу видео, а затем переворачиваю экран, чтобы изменить ориентацию. Видео продолжает играть, и все меняется соответствующим образом … Как это возможно, если активность полностью воссоздана?

Спасибо.

В AndroidManifest.xml add, android: configChanges, и это позволит избежать повторного создания активности при изменении ориентации. Надеюсь, ваш ландшафтный и портретный режим будет одинаковым.

<activity android:label="Your Activity Name" android:configChanges="keyboardHidden|orientation|screenSize" android:name="com.yourpackage"> 

Чтобы добавить к этому больше, я бы предложил вам взглянуть на onPause() и onResume() и если вы играете с Fragments, тогда смотрите onSaveInstanceState и onRetainInstanceState вместо того, чтобы применять изменения xml, поскольку « Активность разрушена по дизайну .

http://developer.android.com/training/basics/activity-lifecycle/index.html

Если вы беспокоитесь о потере значения локальных переменных в своей деятельности … Для некоторых из этих переменных вы можете использовать Singleton Pattern. Это не красивое решение, но может работать.