Dialog/DialogFragment 设置透明度/暗度/大小属性

Dialog 设置透明背景(去掉蒙层)状态栏颜色不改变 Dialog 设置透明背景,Dialog 去掉灰色蒙层,Dialog 弹出时状态栏颜色不改变 阅读详情

Dialog 设置透明度和暗度

一 设置Dialog Style

<style name="load_dialog_style" parent="@style/Theme.AppCompat.Dialog.Alert">
        <item name="android:windowBackground">@android:color/transparent</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowIsFloating">true</item>
        <item name="android:backgroundDimEnabled">true</item>
        <item name="android:backgroundDimAmount">0.5</item>
       <!-- android:backgroundDimEnabled,设置为true时候,整个Dialog的大背景就是半透明的黑色,如果设置为false就是全透明
           android:backgroundDimAmount表示暗度,0.0f完全不暗,即背景是可见的 ,1.0f时候,背景全部变黑暗    -->
        </style>

关键属性android:backgroundDimEnabled,设置为true时候,整个Dialog的大背景就是半透明的黑色,如果设置为false就是全透明
二 代码设置
1、设置透明度(Dialog自身的透明度)

WindowManager.LayoutParams lp=dialog.getWindow().getAttributes();
lp.alpha=1.0f;
dialog.getWindow().setAttributes(lp);

alpha在0.0f到1.0f之间。1.0完全不透明,0.0f完全透明,自身Dialog不可见。

2、设置黑暗度(Dialog 窗口背景的黑暗度)

WindowManager.LayoutParams lp= dialog.getWindow().getAttributes();
lp.dimAmount = 1.0f;
dialog.getWindow().setAttributes(lp);
dialog.getWindow().addFlags(WindowManager.LayoutParams.FLAG_DIM_BEHIND);

true
0.5
dimAmount在0.0f和1.0f之间,0.0f完全不暗,即背景是可见的 ,1.0f时候,背景全部变黑暗
3.设置Dialog底背景模糊和黑暗度

WindowManager.LayoutParams.FLAG_BLUR_BEHIND(设置模糊)
WindowManager.LayoutParams.FLAG_DIM_BEHIND(设置暗淡)

4.清除Dialog底背景模糊和黑暗度

getDialog().getWindow().clearFlags(WindowManager.LayoutParams.FLAG_BLUR_BEHIND | WindowManager.LayoutParams.FLAG_DIM_BEHIND)

DialogFragment设置透明度/暗度/大小属性
直接在DialogFragment中onStart()中设置,因为Dialog启动并显示在屏幕上

 @Override
    public void onStart() {
        super.onStart();
        Dialog dialog = getDialog();
        if (dialog != null && getActivity() != null) {
           //设置窗口的背景
            dialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent);
            WindowManager.LayoutParams lp = dialog.getWindow().getAttributes();
            lp.dimAmount = 0.0f;//设置窗口后面的暗度
           // lp.alpha = 0.8f;//设置dialog窗口的透明度
            //设置dialog窗口的宽
            lp.width = ScreenUtil.getScreenWidth(Objects.requireNonNull(getActivity())) * 0.75;
            lp.height = LinearLayout.LayoutParams.WRAP_CONTENT;//设置dialog窗口的高
            dialog.getWindow().setAttributes(lp);
        }
    }

当然也可以这样

   dialog.getWindow().setLayout(400,300);//设置窗口的宽高
   dialog.getWindow().setDimAmount(0.5f); //设置窗口后面的暗度

参考:
Dialog整个窗体背景设置为透明
Android Dialog透明度和暗度

实现圆形加载中效果自定义Dialog 关于实现圆形加载,网上有很多Demo,比方说使用ImageView+图片旋转 ,直接使用动画,等等。 在这么多方法中我试过2面的两种,但是都不是很好用,后面终于找到了一种比较好的实现方式就是在xml中定义样式+一张rotate图片+自定义Dialog。 废话不多说,马上开搞。 **第一步** 自定义Dialog 在xml中加入一个myDialogTheme2的style样式 <style 阅读详情

相关推荐

手把手教你用CV5200模块搭建无人机高清图传系统(含实测数据)

本文提供了一份基于CV5200模块搭建远距离无人机高清图传系统的完整实战指南。文章详细解析了系统架构、硬件连接、软件配置与优化,并分享了实地飞行测试数据。核心在于利用CV5200的LR-WiFi私有协议,在视距下实现数公里级的稳定高清视频传输,为DIY爱好者和行业应用提供了高性价比的解决方案。

day7的博客 719

Android设置Dialog蒙版背景颜色

添加圈出来的即可, <item name="android:backgroundDimEnabled">true</item> 启用背景暗淡设为true <item name="android:backgroundDimAmount">0.8</item>用来控制具体透明度(值越小透明度越大,当前是80%透明度) ...

s_nshine的博客 7246

别再为淘宝滑块发愁了!一个Python脚本自动获取x5sec cookie的保姆级教程

本文提供了一套完整的Python自动化解决方案,帮助开发者轻松应对淘宝滑块验证码问题。通过模拟浏览器行为、精准识别滑块缺口位置和生成拟人化移动轨迹,脚本能够自动获取关键的x5sec cookie,显著提升爬虫效率。教程涵盖环境配置、验证机制分析、代码实现及反检测策略,是解决淘宝滑块验证的实用指南。

weixin_30300225的博客 574

AlertDialog 攻略 自定义宽度,改变灰色背景透明度

在android项目中经常会遇到这样的需求,从底部弹出些选项之类的。实现起来有很多种方法,比如:popupwindow,或者干脆定义一个透明灰色背景的view充当cover,然后通过设置要显示内容的visibility属性及辅助动画来达到这样的效果。 但是,灰色的背景总是不能覆盖状态栏。而使用Dialog会达到全屏灰色背景的沉浸体验效果。但是,Dialog使用时宽度一般不是充满屏幕宽度的,我们接下来

dodouaj的专栏 5357

PyTorch+C3D实战:用UCF101数据集训练你的第一个视频动作识别模型(附完整代码)

本文详细介绍了如何使用PyTorch和C3D模型在UCF101数据集上构建视频动作识别系统。从环境配置、数据预处理到模型训练与优化,提供了完整的代码实战指南,帮助开发者快速掌握视频行为识别技术。文章特别强调了3D卷积核设计、混合精度训练等关键技术要点,并分享了模型部署优化经验。

weixin_29233857的博客 218

别再瞎试了!用Python+正交设计,5分钟搞定你的多因素实验方案

本文介绍了如何利用Python和正交设计高效优化多因素实验方案。正交设计通过精心设计的正交表,用最少的实验次数覆盖所有因素的水平组合,显著提升实验效率。文章详细讲解了正交设计的核心优势、Python实现工具链、实验实施与数据分析方法,以及高级技巧与常见问题解决方案,帮助读者快速掌握这一强大的实验优化技术。

weixin_42526087的博客 332

设置DialogFragment背景透明

设置DialogFragment背景透明的方法如下: 1.在onCreateView()方法中设置弹窗内部的背景透明。 @Override public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, Bundle savedInstanceState) { // 设置弹窗内部的背景透明 getDialog().getWindow().setBackgroundDrawableResour

冰雪世界 1677

从零组装一台会‘看’的无人机:手把手教你配置NUC机载电脑与D435深度相机(环境搭建篇)

本文详细介绍了如何从零开始组装一台具备视觉能力的智能无人机,重点讲解了NUC机载电脑与D435深度相机的配置方法。通过Ubuntu系统安装、ROS环境搭建、深度学习框架配置等步骤,帮助开发者实现无人机的自主避障和目标跟踪功能。文章还提供了性能优化和常见问题解决方案,是无人机视觉系统开发的实用指南。

weixin_30915275的博客 396

Dialog/DialogFragment 设置全屏/透明度相关属性

文章目录Dialog设置透明度和暗度一 设置Dialog Style二 代码设置DialogFragmentonCreateViewView占满屏幕一添加style二 设置参数onCreateDialog**DialogFragment设置透明度/暗度/大小属性** Dialog 设置透明度和暗度 一 设置Dialog Style <style name="load_dialog_style" parent="@style/Theme.AppCompat.Dialog.Alert">

K_Hello的博客 4875

从48V到800V:TI BMS芯片如何应对高压电池管理挑战?

电池管理系统是电动汽车和储能系统的核心,负责监控电池状态、保障安全并优化性能。其核心原理在于通过高精度测量电池电压、电流和温度,结合算法估算电池的荷电状态与健康状态,从而实现精准的能量管理与寿命预测。在技术价值层面,高精度测量能最大化利用电池化学窗口,提升能量密度与续航里程;而符合功能安全标准的设计则是防止热失控等安全事故的基石。随着汽车电气化从48V轻混系统向400V/800V高压平台演进,BMS面临着测量精度、功能安全、高压隔离通信和系统成本等多重挑战。德州仪器的BQ796xx和BQ75614系列芯片,

weixin_27017211的博客 341

Ubuntu 22.04 实战:为WIFI6网卡Realtek RTL8852BE手动编译驱动指南

本文详细介绍了在Ubuntu 22.04系统上为Realtek RTL8852BE WIFI6网卡手动编译驱动的完整指南。从问题诊断、环境准备到源码获取、编译安装,逐步解决驱动缺失问题,并提供常见问题排查和性能优化建议,帮助用户充分发挥WIFI6网卡性能。

weixin_30808693的博客 478

DialogFragment使用总结

最近使用dialog的情况比较多,谷歌现在开始建议使用Dialogfragment 来代替传统的dialog,至于dialogfragment 的好处大家可以百度一下,于是乎要转变思路开始使用最新的dialogfragment,不过使用过程不是很顺利,各种坑,所以今天索性把基本上所有情况都整理了一下,上代码吧还是        1.最基本的一个普通的dialog [ja

小赵的博客 1441

RT-DETR改进策略【损失函数篇】| 2024 引进Focaler-IoU损失函数 加强边界框回归 (Focaler-DIoU、Focaler-GIoU、Focaler-CIoU等)

本文记录的是改进RT-DETR的损失函数,将其替换成。现有研究通过利用边界框之间的几何关系来提高回归性能,但忽略了困难样本和简单样本分布对边界框回归的影响。不同检测任务中困难样本和简单样本的分布不同,对于简单样本占主导的检测任务,关注简单样本的边界框回归有助于提高检测性能;对于困难样本比例较高的检测任务,需要关注困难样本的边界框回归。,提高检测器在不同检测任务中的性能。实现的。

Limiiiing的博客 1922

Dialog/DialogFragment宽度高度修改/全屏,自定义样式

其实Dialog, DialogFragment, Activity 能看到的界面,都是基于Window显示的; 也就是修改样式, 都是在修改window的样式; 所以,本质上方法都是一样的,唯一不同的就是获取window对象的方法不一样; Dialog 通过, getWindow() ...

chuanao8829的博客 544

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

android 创建单例对话框_Android基于DialogFragment封装一个通用的Dialog

原标题:Android基于DialogFragment封装一个通用的Dialog一、背景Dialog是项目中最常用的一个功能之一了,接手项目的时候发现项目中是封装了一个dialog的,但是发现是用单例封装的,大致如下:privateMyDialog(){}publicstaticMyDialog getInstance(){returnDialogHolder.instance;}privates...

weixin_39963096的博客 1033

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

自定义的Dialog(继承DialogFragment)适用Android 3.0以上

自定义的Dialog(继承DialogFragment)适用Android 3.0以上 封装dialog(利用dataBinding绑定布局),内容:动画、位置、宽高等属性都可以根据自己的需求来定义 图片展示: 代码如下 /** * 公共dialog (使用只要继承CustomizeDialog就可以) * * @author 2216264142@qq.com */ public abstract class CustomizeDialog<T extends ViewDataBindi

weixin_44357587的博客 769

Android基于DialogFragment封装一个通用的Dialog

一、背景 Dialog是项目中最常用的一个功能之一了,接手项目的时候发现项目中是封装了一个dialog的,但是发现是用单例封装的,大致如下: private MyDialog() { } public static MyDialog getInstance() { return DialogHolder.ins...

weixin_33897722的博客 268

DialogFragment 白边去除

【代码】DialogFragment 白边去除。

魑魅魍魉9527 715

使用DialogFragment的一些感受及防踩坑经验(getActivity、getDialog为空,cancelable无效等)

前言 安卓里面创建对话框的方式其实蛮多的。Dialog、AlertDialog、DialogFragment、PopupWindow甚至Activity设置主题为Dialog也能创建对话框。

cjs1534717040的专栏 3417

限制DialogFragment相对屏幕的最大高度

限制DialogFragment相对屏幕的最大高度 @Override public void onResume() { super.onResume(); initDialogParams(); } private void initDialogParams() { Window window = getDialog().getWindow(); WindowManager windowManager

xuanwenchao的专栏 1165

android ios dialog,AndroidSuperDialog

基于DialogFragment封装,支持自定义边框圆角、背景透明度、字体大小与色值等。列表选择框可以接收List与Arrays的数据源,详细见demo。初衷是掌握知识点,此库不一定适合你的产品整体风格,当然能够适合你的项目最好不过,有建议和不足之处欢迎骚扰。知识点全代码创建shape、selector、Layout,三大Layout不用多讲,肯定都会的,主要是Shape所使用类如下:shape对...

weixin_34391934的博客 183

一个android的dialog框架

AndroidSuperDialog 基于DialogFragment封装,支持自定义边框圆角、背景透明度、字体大小与色值等。 列表选择框可以接收List与Arrays的数据源,。 初衷是掌握知识点,此库不一定适合你的产品整体风格,当然能够适合你的项目最好不过,有建议和不足之处欢迎骚扰,话不多说先上图。 android studio中 引入 compile 'co

wr_848174973的博客 4398

TDialog: DialogFragment封装,高效实现各种弹窗效果

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_33724059的博客 193

TDialog: DialogFragment封装,高效实现各种弹窗效果.md

前言 文章代码示例已放到Github上了,有需要的朋友可以去看下TDialog,欢迎star和fork,项目会一直维护,有疑问可以提Issues或留言. 文章目录 TDialog框架的由来 框架使用解析 框架原理解析 正文开始前先来一波效果图 一.TDialog的由来 所有框架的由来都是为了更方便,更高效的解决问题,TDialog也一样,是为了在项目中更高效的实现项目的弹窗效果 TDia...

weixin_33751566的博客 176

自定义Dialog(笔记)

最近有一个需求 做一个类似于夸克浏览器的menu对话框 像这样的对话框肯定是自定义的。 查了一些资料: android 8种对话框(Dialog)使用方法汇总 Android设置Dialog透明度、黑暗度方法 Android创建自定义dialog方法详解-样式去掉阴影效果 使用DialogFragment实现底部弹窗布局 Android 官方

liangfeng093的博客 368
上一篇: kotlin plugin kotlin-kapt 注解处理
下一篇: socket 简要总结
K_Hello
博客等级 码龄12年 33粉丝 115原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值