修复Dialog关闭没有移除View的bug

This commit is contained in:
董宏宇
2020-07-23 19:52:15 +08:00
parent d7a900c735
commit 63022a3ee3
3 changed files with 17 additions and 8 deletions

View File

@@ -2,7 +2,8 @@ package com.mogo.module.common.wm;
import android.app.Dialog;
import android.content.Context;
import android.view.View;
import android.view.ViewGroup;
import com.mogo.module.common.dialog.BaseFloatDialog;
import com.mogo.utils.logger.Logger;
@@ -12,12 +13,15 @@ import com.mogo.utils.logger.Logger;
*/
class DialogImpl implements IWindowManagerView {
private Dialog dialog;
private View contentView;
@Override
public void init(WindowManagerView.WMViewParams params) {
Logger.d("DialogImpl", "init====");
dialog = new BaseFloatDialog(params.mContext);
Logger.d("DialogImpl","params view : " + params.mContentView);
dialog.setContentView(params.mContentView);
contentView = params.mContentView;
Logger.d("DialogImpl", "params view : " + contentView);
dialog.setContentView(contentView);
}
@Override
@@ -32,6 +36,12 @@ class DialogImpl implements IWindowManagerView {
@Override
public void hide() {
/*
* 取得view的父组件然后移除view
*/
if (contentView != null) {
((ViewGroup) contentView.getParent()).removeView(contentView);
}
dialog.dismiss();
}
}