欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android编程实现activity dialog透明背景的方法

程序员文章站 2022-08-08 10:33:55
本文实例讲述了android编程实现activity dialog透明背景的方法。分享给大家供大家参考,具体如下: 首先查一下window  activity的...

本文实例讲述了android编程实现activity dialog透明背景的方法。分享给大家供大家参考,具体如下:

首先查一下window  activity的关系

Android编程实现activity dialog透明背景的方法

具体省略。。。。

我的理解就是

每个activity都有一个window 也就是view的最顶层容器
activity是提供给用户交互的一组view容器(window的child)

层次关系是

<window>
<activity>
</activity>
</window>

所以说如果需要设置actiivty透明

<style name="app_transparent_activity" parent="android:theme.light">
  <!-- 是否支持透window明度 -->
  <item name="android:windowistranslucent">true</item>
  <!-- window背景颜色 -->
  <item name="android:windowbackground">@android:color/transparent</item>
</style>

需要先设置一下 windowistranslucent 让window可以透明。。然后在设置window的背景

这时候 activity是否透明还需要看 activity的 content的背景颜色是否是透明的

只需要在layout里设置一下即可。默认为透明的。。#00000000
【如果istranslucent设置为false    background属性将不起作用】

同样的 dialog 透明需要设置一下属性

<style name="app_transparent_dialog" parent="android:theme.light">
    <!-- 是否支持透window明度 -->
    <item name="android:windowistranslucent">true</item>
    <!-- window背景颜色 -->
    <item name="android:windowbackground">@android:color/transparent</item>
    <!-- 屏幕内容区域以外的背景是否可以设置灰度值(与backgrounddimamount搭配使用) -->
    <item name="android:backgrounddimenabled">true</item>
    <!-- 灰度值 -->
    <item name="android:backgrounddimamount">0.8</item>
</style>

更多关于android相关内容感兴趣的读者可查看本站专题:《android编程之activity操作技巧总结》、《android窗口相关操作技巧总结》、《android开发入门与进阶教程》、《android资源操作技巧汇总》、《android数据库操作技巧总结》、《android视图view技巧总结》及《android控件用法总结

希望本文所述对大家android程序设计有所帮助。