记录生成一个Dialog样式的Activity的步骤

博客介绍了在Android开发中,新建继承AppCompatActivity的Activity并编写布局文件,添加新style并在清单文件使用,调用setFinishOnTouchOutside避免点击空白返回,设置activity宽高,调用setTitle去掉title,代码在onCreate的setContentView后添加。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.新建一个继承AppCompatActivity的Activity,编写对应的布局文件.

2.添加一个新的style ,然后在清单文件上使用起来

    <style name="DialogActivityStyle" parent="Theme.AppCompat.Dialog">
    
        <item name="android:windowBackground">@android:color/transparent</item>
             <!--设置Dialog的windowFrame框为无-->
        <item name="android:windowFrame">@null</item>
             <!--设置无标题-->
        <item name="android:windowNoTitle">true</item>
             <!--是否浮现在activity之上-->
        <item name="android:windowIsFloating">true</item>
            <!--背景是否模糊显示-->
        <item name="android:backgroundDimEnabled">true</item> 
    </style>

3.调用setFinishOnTouchOutside(false);已达到点击空白部分不能返回的效果;

设置activity的宽高

WindowManager m = getWindowManager();
        Display d = m.getDefaultDisplay();  //为获取屏幕宽、高
        WindowManager.LayoutParams p = getWindow().getAttributes();  //获取对话框当前的参数值
        p.height = (int) (d.getHeight() * 0.4);   //高度设置为屏幕的0.6
        p.width = (int) (d.getWidth() * 0.6);    //宽度设置为屏幕的0.7
        p.alpha = 1.0f;      //设置本身透明度
        p.dimAmount = 0.5f;      //设置窗口外黑暗度
        getWindow().setAttributes(p);

调用setTitle(null);去掉title.

以上代码都在onCreate中setContentView后添加

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值