ImageView не отображается в области выреза дисплея в Samsung One UI Device - PullRequest
1 голос
/ 01 октября 2019

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

Вот код.

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

<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 Ответ

0 голосов
/ 01 октября 2019

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

<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>
...