android - 如何在显示对话框时正确模糊背景
问题描述
你好,我正在使用一个对话框,我想模糊背景,但有一个问题
我正在尝试实现与此类似的模糊
我发现一个问题有相同的问题,但未解决的警报对话框只模糊了屏幕的一部分
好的,我已经使用了这个答案,它工作得很好,但模糊只显示在对话框周围,而不是整个布局
这是我从答案中实现的代码行,整个代码在图像下方
getDialog().getWindow().addFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
这是我得到的截图
如您所见,模糊效果很好,但不正确
这是代码
注意:- 我只包含必要的文件和代码,所以问题不会变得冗长和混乱,但如果您想要更多代码参考,请告诉我我会更新问题
对话框.java
public class sort_image_dialoge_fragment extends DialogFragment {
@Nullable
@org.jetbrains.annotations.Nullable
@Override
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable @org.jetbrains.annotations.Nullable ViewGroup container, @Nullable @org.jetbrains.annotations.Nullable Bundle savedInstanceState) {
super.onCreateView(inflater, container, savedInstanceState);
View view = inflater.inflate(R.layout.sort_image, container, false);
if (getDialog() != null && getDialog().getWindow() != null) {
getDialog().getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
getDialog().getWindow().requestFeature(Window.FEATURE_NO_TITLE);
// This is the line i have implemented form the answer to blur the background
getDialog().getWindow().addFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND);
}
return view;
}
}
Home_Fragment.java // 这是必须被模糊并包含文本视图的布局,按下时会弹出对话框
TextView sortDialoge_textView;
public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_home, container, false);
sortDialoge_textView = view.findViewById(R.id.sort_text);
sortDialoge_textView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
sort_image_dialoge_fragment sortDialoge = new sort_image_dialoge_fragment();
sortDialoge.show(requireActivity().getSupportFragmentManager(), sortDialoge.getTag());
}
});
return view;
}
解决方案
推荐阅读
- javascript - Embed.ly API:player.js 不适用于优酷网
- laravel - Laravel hasMany通过多态关系
- python - 如果使用上下文管理(with-as),我应该手动关闭数据库连接吗?
- java - 如何使用 HTTP Post 将图像发送到服务器
- mysql - MySQL 将 2 个查询连接到同一张表
- c - 解释指针和 sizeof 结构的不同值
- angular - 订单列表 - 在 Angular 5 中使用动态类时,列表项目编号消失
- python - 使用 python 将带有键和数据框的 dict 写入 excel 工作表
- python - 如何将未知 .XLS 文件的名称放入 Python 3.7 中的变量中
- r - R - 汇总行值,将结果作为一行返回