最新遇到个新问题,activity从全屏切换到非全屏时,在Android6.0.1设备上能正常显示,但是在Android8.0的设备上会出现该现象:先全屏显示界面布局,显示状态栏后屏幕有明显的下移问题。经过网上查找发现了如下解决方法。
可以在onCreate()或onResume()方法下添加这个方法
private void smoothScreen(){
if (Build.VERSION.SDK_INT > Build.VERSION_CODES.LOLLIPOP) {
ViewGroup rootView = ((ViewGroup) this.findViewById(android.R.id.content));
int resourceId = getResources().getIdentifier("status_bar_height", "dimen", "android");
int statusBarHeight = getResources().getDimensionPixelSize(resourceId);
rootView.setPadding(0, statusBarHeight, 0, 0);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS);
}
}