使用沉浸式模式的應用程序在等待一段時間後應用程序返回(活動已被銷燬)時,會在屏幕底部留下黑條。如何防止導航欄留下黑條? (沉浸式模式)
發生了什麼:(我已經啓用了開發者選項:「不要保留活動」來重現這一點)。
首次啓動應用程序。沉浸模式按預期工作。
向上滑動以顯示「沉浸式粘性」導航欄,並使用「主頁」按鈕離開應用程序。導航欄的背景在應用程序關閉前簡要顯示黑色背景。
使用「最近」按鈕,然後選擇要恢復的應用程序。
該應用程序打開後短暫顯示黑色欄上的導航欄。系統ui陷入沉浸式模式,但黑色條仍然存在。
此錯誤也只出現在棒棒糖,不是奇巧。
我已經剝離迴應用程序簡單地設置從系統UI標誌推出無功能的虛擬活動分開:
public class DummyActivity extends FragmentActivity {
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
if (hasFocus) {
setSystemUiVisibility();
}
}
public void setSystemUiVisibility() {
if (getWindow() != null && getWindow().getDecorView() != null) {
getWindow().getDecorView().setSystemUiVisibility(
View.SYSTEM_UI_FLAG_LAYOUT_STABLE
| View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
| View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY);
}
}
}
編輯: 僅與該活動創建一個新的新項目,我已經看到了這一點後,使用應用的主題延伸時的問題轉載「機器人:Theme.Holo」 ...,並固定在此示例項目的問題,當我延長材料主題,而不是:
變化
<style name="AppTheme" parent="android:Theme.Holo.Light.NoActionBar.Fullscreen">
</style>
到
<style name="AppTheme"parent="android:Theme.Material.Light.NoActionBar.Fullscreen">
</style>
遺憾的是此修復程序沒有解決問題,在我的主要項目,但它使我更接近解決方案,可以幫助其他有同樣問題。
您是否嘗試過運行Hierarchy Viewer以確定該條是什麼? – robotoaster 2015-02-25 16:23:15