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