WindowManager.LayoutParams.FLAG_FULLSCREEN弃用 
时间: 2023-03-27 10:05:03 浏览: 96
这是一个技术问题,我可以回答。WindowManager.LayoutParams.FLAG_FULLSCREEN 是一个标志位,用于指示窗口是否应该全屏显示。但是,从 Android 11 开始,这个标志位已经被弃用,建议使用 WindowInsetsController 来控制窗口的全屏显示。
相关问题
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT) { Window window = getWindow(); window.addFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS | WindowManager.LayoutParams.FLAG_FULLSCREEN); }‘
这段代码的作用是设置当前Activity的状态栏透明,并且全屏显示。
`Build.VERSION.SDK_INT` 是获取当前设备的Android版本号,`Build.VERSION_CODES.KITKAT` 是Android 4.4的版本号。如果当前设备的Android版本号大于等于4.4,就执行后面的代码。
`getWindow()` 获取当前Activity的窗口对象,`addFlags` 方法给窗口添加标志位,`WindowManager.LayoutParams.FLAG_TRANSLUCENT_STATUS` 表示状态栏透明,`WindowManager.LayoutParams.FLAG_FULLSCREEN` 表示全屏。
package com.exampleytpeak.paizhao; import android.os.Bundle; import android.view.Window; import android.view.WindowManager; import androidx.appcompat.app.AppCompatActivity; import butterknife.ButterKnife; public abstract class BaseActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); supportRequestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); initLayout(); ButterKnife.bind(this); initView(); initData(); initEvent(); } public abstract void initLayout(); public abstract void initView(); public abstract void initData(); public abstract void initEvent(); }
这是一个抽象类 BaseActivity,它继承自 AppCompatActivity 类。在 onCreate 方法中,它设置了窗口的一些特性,然后调用了四个抽象方法 initLayout、initView、initData 和 initEvent。这四个抽象方法需要由子类实现,用于初始化布局、视图、数据和事件。此外,它还使用 ButterKnife 绑定了当前 Activity 的视图。可以根据需要继承该类并实现这四个抽象方法来快速构建一个 Activity。
相关推荐















