This commit is contained in:
unknown
2020-07-30 16:03:28 +08:00
4 changed files with 32 additions and 3 deletions

2
.idea/misc.xml generated
View File

@@ -4,7 +4,7 @@
<asm skipDebug="false" skipFrames="false" skipCode="false" expandFrames="false" />
<groovy codeStyle="LEGACY" />
</component>
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="JDK" project-jdk-type="JavaSDK">
<component name="ProjectRootManager" version="2" languageLevel="JDK_1_8" project-jdk-name="1.8" project-jdk-type="JavaSDK">
<output url="file://$PROJECT_DIR$/build/classes" />
</component>
</project>

View File

@@ -63,7 +63,7 @@ MOGO_BASE_SERVICES_SDK_VERSION = 1.2.1.22
## 工程外部模块
# 探路
MOGO_MODULE_TANLU_VERSION=1.3.1.16
MOGO_MODULE_TANLU_VERSION=1.3.1.20
# 车聊聊
CARCHATTING_VERSION=1.4.8
# 车聊聊接口
@@ -81,7 +81,7 @@ MOGO_MODULE_PUSH_NOOP_VERSION=1.1.5.6
# 广告资源位
MOGO_MODULE_AD_CARD_VERSION=1.0.1
# 探路上报和分享模块
TANLULIB_VERSION=1.3.1.16
TANLULIB_VERSION=1.3.1.20
MOGO_MODULE_EVENT_PANEL_VERSION = 1.0.0-SNAPSHOT
MOGO_MODULE_EVENT_PANEL_NOOP_VERSION = 1.0.0-SNAPSHOT
#左侧面板模块

View File

@@ -662,4 +662,21 @@ public class TopViewAnimHelper {
tvTurnInfo.setVisibility(visibility);
}
public void removeAllView(){
Logger.d(TAG, "remove all view");
isTopViewOut = true;
int lastCount = topContainer.getChildCount();
for (int i = 0; i < lastCount; i++) {
View child = topContainer.getChildAt(i);
viewCaches.remove(child);
IMogoTopViewStatusListener listener = statusListenerMap.remove(child);
if (listener != null) {
listener.onViewRemoved(child);
}
}
topContainer.removeAllViews();
hideNaviView();
MapCenterPointStrategy.setMapCenterPointByScene(mogoMapUIController, Scene.AIMLESS);
}
}

View File

@@ -6,8 +6,12 @@ import android.view.ViewGroup;
import android.view.ViewGroup.LayoutParams;
import com.alibaba.android.arouter.facade.annotation.Route;
import com.alibaba.android.arouter.launcher.ARouter;
import com.mogo.module.extensions.R;
import com.mogo.service.IMogoServiceApis;
import com.mogo.service.MogoServicePaths;
import com.mogo.service.statusmanager.IMogoStatusChangedListener;
import com.mogo.service.statusmanager.StatusDescriptor;
import com.mogo.service.windowview.IMogoTopViewManager;
import com.mogo.service.windowview.IMogoTopViewStatusListener;
@@ -21,10 +25,18 @@ public class TopViewManager implements IMogoTopViewManager {
private Context context;
private LayoutParams parentParams;
private IMogoServiceApis serviceApis;
@Override
public void init(Context context) {
this.context = context;
serviceApis =
(IMogoServiceApis) ARouter.getInstance().build(MogoServicePaths.PATH_SERVICE_APIS).navigation(context);
serviceApis.getStatusManagerApi().registerStatusChangedListener(MogoServicePaths.PATH_EXTENSIONS_TOP_VIEW_MANAGER, StatusDescriptor.MAIN_PAGE_RESUME, (descriptor, isTrue) -> {
if (!isTrue) {
TopViewAnimHelper.getInstance().removeAllView();
}
});
}
@Override