更新:最後找到一點點哈克解決方案。但這是不可接受的。所有想法都可能有用。初始屏幕奇怪的黑色矩形屏幕上
我有一個啓動畫面活動,我不使用setContentView()。 我設置背景從styles.xml使用安卓windowBackground
當閃屏開始,一個黑色矩形不知從何處出現時,位於屏幕左側下部。導航欄的高度與導航欄完全相同,從屏幕左側開始,到屏幕中心結束。
這個黑色矩形只在設備上出現,其中有導航欄。不是物理按鈕。也只有當試圖隱藏或顯示導航欄在FullScreen活動時纔可見。
問題:這個錯誤的原因是什麼?我該如何解決它?
您可以在下面看到整個事件。 (初始屏幕登錄屏幕過渡)
這裏我潑活動風格:
<style name="SplashTheme" parent="Theme.AppCompat.Light.NoActionBar">
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="android:windowBackground">@drawable/background_splash</item>
<item name="windowNoTitle">true</item>
<item name="windowActionBar">false</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowContentOverlay">@null</item>
</style>
background_splash.xml
<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
//Tried different colored layer at bottom level but did not affect
<item>
<shape android:shape="rectangle">
<solid android:color="@color/grey_Dark"/>
</shape>
</item>
//Background image
<item
android:drawable="@drawable/bg"
android:gravity="center"/>
//9-patch Logo at the center
<item
android:drawable="@drawable/splash_logo"
android:gravity="center"/>
</layer-list>
ActivitySplash
public class ActivitySplash extends BaseActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
final View decorView = getWindow().getDecorView();
decorView.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 // hide nav bar
| View.SYSTEM_UI_FLAG_FULLSCREEN
| View.SYSTEM_UI_FLAG_IMMERSIVE);
new Handler().postDelayed(new Runnable() {
@Override
public void run() {
Intent intent = new Intent(ActivitySplash.this, ActivityLogin.class);
startActivity(intent);
finish();
}
}, 2000);
}
}
您是否檢查過「show layout bounds」這個問題?那其實是一些觀點嗎? – azizbekian
@azizbekian發佈了一個答案,你可以檢查。 –