2013-03-13 4 views
5

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

В моем приложении я использую панель действий в верхней части второго действия, и я четко вижу, как происходит мерцание при переключении между действиями.

Когда появляется строка состояния, она плавно не отключает мою активность, но очень быстро и с этим раздражающим мерцанием.

Есть несколько API, которые я могу использовать для управления этим поведением? Или какое-то другое обходное решение?

ответ

7

У меня был такой же выпуск. Ниже обходного решения исправлено его, введите этот код, прежде чем завершить свое первое действие.

Handler handler = new Handler(); 
handler.post(new Runnable() { 
    @Override 
    public void run() { 
     YourActivity.this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN, 
       WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN); 
    } 
}); 
+0

Если у вас возникли проблемы, вы можете принять это как ответ –

+0

Это был единственный ответ, который сработал. Я поставил следующий код в Oncreate перед setContentView. ... если (Build.VERSION.SDK_INT> = Build.VERSION_CODES.KITKAT) { GetWindow() getDecorView() setSystemUiVisibility (View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN |.. View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); } ... И не забудьте также поставить его в onWindowFocusChanged метод переопределения. –