ImageView не отображается в области выреза дисплея на устройстве Samsung One UI

Я пытаюсь сделать полноэкранный режим. Я отредактировал стиль темы для своего занятия, чтобы он отображался в вырезе на экране. Но это не работает. Я пробую это на своем телефоне Samsung с One UI Pie, я видел несколько вопросов в стеке, и они могут работать в пиксельном или стандартном Android. Но в Самсунге они не работают.

Вот код.

Это мой код стиля.

<style name="FullScreen" parent="Theme.AppCompat.Light">
        <item name="windowNoTitle">true</item>
        <item name="windowActionBar">true</item>
        <item name="android:windowFullscreen">true</item>
        <item name="android:windowTranslucentStatus">false</item>
        <item name="android:windowLayoutInDisplayCutoutMode" tools:targetApi="o_mr1">shortEdges</item>
    </style>

Я тоже пробовал программно.


import androidx.appcompat.app.AppCompatActivity;

import android.os.Build;
import android.os.Bundle;
import android.view.View;
import android.view.WindowManager;
import android.widget.ImageView;

public class NotchEdit extends AppCompatActivity {
    private ImageView iv;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_notch_edit);

        ImageView iv = findViewById(R.id.imageView3);

        WindowManager.LayoutParams attrib = getWindow().getAttributes();
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.P) {
            ((WindowManager.LayoutParams) attrib).layoutInDisplayCutoutMode =
                    WindowManager.LayoutParams.LAYOUT_IN_DISPLAY_CUTOUT_MODE_SHORT_EDGES;
        }
    }
}

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

Итак, пожалуйста, скажите мне, как это сделать на устройстве Samsung, а также на других устройствах.

1 ответ

Решение

Добавьте этот стиль для полноэкранного режима:-

<style name="FullScreenTheme" parent="Theme.AppCompat.Light.NoActionBar">
    <item name="android:windowNoTitle">true</item>
    <item name="android:windowActionBar">false</item>
    <item name="android:windowFullscreen">true</item>
    <item name="android:windowContentOverlay">@null</item>
</style>
Другие вопросы по тегам