Как скрыть панели навигации и статуса до отображения пользовательского экрана заставки (splash screen)?

Как изменить код, чтобы SplashScreen не пропадал сразу после его завершения, а оставался на экране?
  • 5 апреля 2024 г. 13:09
Ответы на вопрос 1
Для того чтобы скрыть панели навигации и статуса до отображения пользовательского экрана заставки (splash screen), можно воспользоваться следующим кодом:

```java
// Скрыть панели навигации и статуса
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
```

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

1. Создать новую активность SplashScreenActivity, которая будет содержать заставку.
2. Установить эту активность как стартовую в манифест файле:
```xml
<activity android:name=".SplashScreenActivity">
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>
```
3. В методе onCreate() вашей SplashScreenActivity запустить задачу по истечении определенного времени для перехода к следующей активности. Например:
```java
new Handler().postDelayed(new Runnable() {
    @Override
    public void run() {
        Intent intent = new Intent(SplashScreenActivity.this, MainActivity.class);
        startActivity(intent);
        finish();
    }
}, 3000); // 3000 миллисекунд (3 секунды)
```

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