实现透明Dialog样式的Activity

最近在项目开发中遇到了一个难题,需要先弹出一个Dialog然后点击Diaolog上面的按钮之后再弹出一个Dialog 大概就是如下:
按着上面的思路开始来了,发现了一个问题,一个界面当前只能显示一个Dialog,有一个Dialog存在的时候就不能去显示另一个Dialog,然后就想到了用Activity的style去设置,让Activity去显示上面的一层。

下面来说一个我的想法和步骤:
1.创建一个style,
    <style name="dialog_style" parent="@android:style/Theme.Translucent.NoTitleBar">

        <!--是否悬浮在activity上-->
        <item name="android:windowIsFloating">true</item>
        <!--透明是否-->
        <item name="android:windowIsTranslucent">true</item>
	<!--activity的背景颜色(一定要设置成#00000000)-->
        <item name="android:background">#00000000</item>
	<!--没有标题-->
        <item name="android:windowNoTitle">true</item>
	
        <item name="windowActionBar">false</item>
        <item name="windowNoTitle">true</item>
	<!--可以设置Activity的弹出和消失动画(可选)-->
        <!--<item name="android:windowAnimationStyle">@style/animation_style</item>-->
    </style>
2.给需要显示成Dialog样式的Activity设置样式:
   <activity
            android:name=".LingQuSuccesActivity"
            android:theme="@style/dialog_style" />

3.注意下面一点Activity的布局文件里面,根布局的颜色要设置成#00000000,否则设置出来的效果不是半透明的,


按着这三步来,很快就把问题解决了,而且我们这个项目里面有好多那种成功界面,这样写的话,可以复用同一个Activity,很简单,想试试的可以尝试一下。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值