FloatWindow.get().hide方法,只能临时隐藏一次,在activiry resume之后,还会再次显示
FloatWindow.get().hide方法,只能临时隐藏一次,在activiry resume之后,还会再次显示
{@link IFloatWindowImpl} line 61 做以下修改:
//show();
//这里做了修改
if (isShowing()) show();
用导入module的方式导入,修改代码加控制变量控制显示和隐藏
1.IFloatWindowImpl 构造方法中:在lifecycle的onShow中做控制 mFloatLifecycle = new FloatLifecycle(mB.mApplicationContext, mB.mShow, mB.mActivities, new LifecycleListener() { @Override public void onShow() { //showThisWindow 就是增加的控制变量 if (mB.showThisWindow){ show(); }
}
@Override
public void onHide() {
hide();
}
@Override
public void onBackToDesktop() {
if (!mB.mDesktopShow) {
hide();
}
if (mB.mViewStateListener != null) {
mB.mViewStateListener.onBackToDesktop();
}
}
});
2.IFloatWindowImpl show()和hide()方法中赋值: @Override public void show() { if (once) { mFloatView.init(); once = false; isShow = true; } else { if (isShow) { return; } getView().setVisibility(View.VISIBLE); isShow = true; mB.showThisWindow = true; } if (mB.mViewStateListener != null) { mB.mViewStateListener.onShow(); } }
@Override
public void hide() {
if (once || !isShow) {
return;
}
getView().setVisibility(View.INVISIBLE);
isShow = false;
_mB.showThisWindow = false;_
if (mB.mViewStateListener != null) {
mB.mViewStateListener.onHide();
}
}
这是来自QQ邮箱的假期自动回复邮件。您好,我最近正在休假中,无法亲自回复您的邮件。我将在假期结束后,尽快给您回复。
谢谢你,祝你天天开心