修改悬浮窗样式,添加悬浮设置
This commit is contained in:
parent
ad785f2b39
commit
a09cbf4776
@ -0,0 +1,94 @@
|
|||||||
|
package com.yunbao.common.dialog;
|
||||||
|
|
||||||
|
import android.os.Bundle;
|
||||||
|
import android.view.Gravity;
|
||||||
|
import android.view.Window;
|
||||||
|
import android.view.WindowManager;
|
||||||
|
import android.widget.ImageView;
|
||||||
|
|
||||||
|
import com.lzf.easyfloat.interfaces.OnPermissionResult;
|
||||||
|
import com.lzf.easyfloat.permission.PermissionUtils;
|
||||||
|
import com.yunbao.common.R;
|
||||||
|
import com.yunbao.common.glide.ImgLoader;
|
||||||
|
import com.yunbao.common.manager.IMLoginManager;
|
||||||
|
import com.yunbao.common.views.weight.ViewClicksAntiShake;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 悬浮窗设置页面
|
||||||
|
*/
|
||||||
|
public class FloatSettingsDialog extends AbsDialogFragment {
|
||||||
|
private ImageView specialSwitch, specialMountSwitch;
|
||||||
|
private boolean isFloat;
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected int getLayoutId() {
|
||||||
|
return R.layout.view_float_settings;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected int getDialogStyle() {
|
||||||
|
return R.style.dialog2;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected boolean canCancel() {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onActivityCreated(Bundle savedInstanceState) {
|
||||||
|
super.onActivityCreated(savedInstanceState);
|
||||||
|
specialSwitch = (ImageView) findViewById(R.id.special_switch);
|
||||||
|
specialMountSwitch = (ImageView) findViewById(R.id.special_mount_switch);
|
||||||
|
isFloat = IMLoginManager.get(getActivity()).isFloat();
|
||||||
|
if (!isFloat) {
|
||||||
|
ImgLoader.display(getContext(), R.mipmap.special_icon_off, specialSwitch);
|
||||||
|
} else {
|
||||||
|
ImgLoader.display(getContext(), R.mipmap.special_icon_on, specialSwitch);
|
||||||
|
}
|
||||||
|
boolean floatPermission = PermissionUtils.checkPermission(mContext);
|
||||||
|
if (!floatPermission) {
|
||||||
|
ImgLoader.display(getContext(), R.mipmap.special_icon_off, specialMountSwitch);
|
||||||
|
} else {
|
||||||
|
ImgLoader.display(getContext(), R.mipmap.special_icon_on, specialMountSwitch);
|
||||||
|
}
|
||||||
|
//礼物特效开关
|
||||||
|
ViewClicksAntiShake.clicksAntiShake(specialSwitch, () -> {
|
||||||
|
isFloat = !isFloat;
|
||||||
|
if (!isFloat) {
|
||||||
|
ImgLoader.display(getContext(), R.mipmap.special_icon_off, specialSwitch);
|
||||||
|
} else {
|
||||||
|
ImgLoader.display(getContext(), R.mipmap.special_icon_on, specialSwitch);
|
||||||
|
}
|
||||||
|
//更新特效开关
|
||||||
|
IMLoginManager.get(getContext()).initFloat(isFloat);
|
||||||
|
|
||||||
|
}
|
||||||
|
);
|
||||||
|
//坐骑特效开关
|
||||||
|
ViewClicksAntiShake.clicksAntiShake(specialMountSwitch, () -> {
|
||||||
|
dismiss();
|
||||||
|
PermissionUtils.requestPermission(getActivity(), new OnPermissionResult() {
|
||||||
|
@Override
|
||||||
|
public void permissionResult(boolean isFloat) {
|
||||||
|
if (!isFloat) {
|
||||||
|
ImgLoader.display(getContext(), R.mipmap.special_icon_off, specialSwitch);
|
||||||
|
} else {
|
||||||
|
ImgLoader.display(getContext(), R.mipmap.special_icon_on, specialSwitch);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void setWindowAttributes(Window window) {
|
||||||
|
window.setWindowAnimations(R.style.bottomToTopAnim);
|
||||||
|
WindowManager.LayoutParams params = window.getAttributes();
|
||||||
|
params.width = WindowManager.LayoutParams.MATCH_PARENT;
|
||||||
|
params.height = WindowManager.LayoutParams.WRAP_CONTENT;
|
||||||
|
params.gravity = Gravity.BOTTOM;
|
||||||
|
window.setAttributes(params);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user