当前位置: 首页 > ai >正文

BottomSheetDialogFragment 设置背景为透明无效果(解决方法)

如题

BottomSheetDialogFragment 设置背景为透明无效果(解决方法)

设置了style没有效果

<style name="TransparentBottomSheet" parent="Theme.Design.Light.BottomSheetDialog"><!-- 关键属性:窗口透明且禁用遮罩 --><item name="android:windowBackground">@android:color/transparent</item><item name="android:background">@android:color/transparent</item><item name="backgroundDimEnabled">false</item><!-- 确保全屏覆盖,避免留白 --><item name="android:windowIsFloating">false</item> 
</style>

解决方法

在 onViewCreated方法中添加

override fun onViewCreated(view: View, savedInstanceState: Bundle?) {super.onViewCreated(view, savedInstanceState)// 移除默认灰色遮罩dialog?.window?.apply {setDimAmount(0f) // 透明遮罩setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT))}// 关键:将底部弹窗容器设为透明val bottomSheet = dialog?.findViewById<View>(com.google.android.material.R.id.design_bottom_sheet)bottomSheet?.setBackgroundColor(Color.TRANSPARENT)
}

完美解决!

http://www.xdnf.cn/news/17121.html

相关文章:

  • antd组件select下拉数据分页加载
  • vcpkg: 一款免费开源的C++包管理器
  • 计算机网络:如何判断B或者C类IP地址是否划分了子网
  • 基于Hadoop的木鸟民宿数据分析与可视化、民宿价格预测模型系统的设计与实现
  • CAN通信
  • 解决Node.js v12在Apple Silicon(M1/M2)上的安装问题
  • 使用R将nc文件转换为asc文件或者tif文件
  • 下载Android studio
  • try catch throw的本质
  • Linux《进程间通信(上)》
  • WARN:get Topic [TBW102] RouteInfoFromNameServer is not exist value
  • 使用MatterJs物理2D引擎实现重力和鼠标交互等功能,有点击事件(盒子堆叠效果)
  • [Oracle] NVL()函数
  • 测试单节点elasticsearch配置存储压缩后的比率
  • 河南萌新联赛2025第(四)场【补题】
  • 8月6日星期三今日早报简报微语报早读
  • JAVA无人系统台球茶室棋牌室系统支持H5小程序APP公众号源码
  • 基于跨境电商场景的智能商品管理系统,采用Bootstrap+Django+MySQL技术架构,实现用户行为追踪、智能推荐、多维度商品展示等核心功能
  • 8、项目管理
  • JAVA 程序员cursor 和idea 结合编程
  • Solidity 编程进阶
  • 8.6 JavaWeb(请求响应 P67-P74)
  • PyTorch入门引导
  • Go语言“fmt”包详解
  • 【Linux内核系列】:信号(上)
  • Docker的安装,服务器与客户端之间的通信
  • LeetCode每日一题,8-6
  • springboot项目justAuth扩展第二个小程序
  • Unity轻量观察相机
  • 功能安全和网络安全的综合保障流程