「Change」

修复bug
http://jira.zhidaohulian.com/browse/YHJSYHZNWL-1037
【RoboTaxi司机端V2.8.0】长时间停留在开始行程页面,启动页面未正常关闭,感觉乘客屏卡死
http://jira.zhidaohulian.com/browse/YHJSYHZNWL-1052
【RoboTaxi乘客屏V1.3.0】开始行程页面,司机端启动自动驾驶,出现启动页面和侧边栏同时存在的场景(偶现)

Signed-off-by: donghongyu <donghongyu@zhidaoauto.com>
This commit is contained in:
donghongyu
2022-06-27 11:33:55 +08:00
committed by liujing
parent 6914aa8b8e
commit 1cd6421e36

View File

@@ -16,21 +16,20 @@ public class OverlayViewUtils {
private static WindowManager windowManager;
private static Context applicationContext;
private static volatile boolean isShowing = false;
/**
* 记录上一次的View
*/
private static View lastOverlayView;
public static void showOverlayView(Activity context, View overlayView){
showOverlayView(context,overlayView,-1);
public static void showOverlayView(Activity context, View overlayView) {
showOverlayView(context, overlayView, -1);
}
/**
* 添加覆盖View在Activity上面
*/
public static void showOverlayView(Activity context, View overlayView,int ani) {
public static void showOverlayView(Activity context, View overlayView, int ani) {
if (applicationContext == null) {
applicationContext = context.getApplicationContext();
}
@@ -54,7 +53,7 @@ public class OverlayViewUtils {
params.type = WindowManager.LayoutParams.TYPE_APPLICATION_PANEL;
// 没有边界限制,允许窗口扩展到屏幕外
params.flags = WindowManager.LayoutParams.FLAG_LAYOUT_NO_LIMITS;
if(ani!=-1){
if (ani != -1) {
params.windowAnimations = ani;
}
@@ -71,7 +70,6 @@ public class OverlayViewUtils {
// });
lastOverlayView = overlayView;
windowManager.addView(overlayView, params);
isShowing = true;
} catch (Exception e) {
e.printStackTrace();
}
@@ -82,17 +80,13 @@ public class OverlayViewUtils {
* 移除覆盖View在Activity上面
*/
public static void dismissOverlayView(View overlayView) {
if (!isShowing) {
return;
}
try {
if (windowManager != null && overlayView != null) {
windowManager.removeView(overlayView);
}
if(lastOverlayView!=null&&lastOverlayView==overlayView){
if (lastOverlayView != null && lastOverlayView == overlayView) {
lastOverlayView = null;
}
isShowing = false;
} catch (Exception e) {
e.printStackTrace();
}