android activity方式的dialog

简介: android activity方式的dialog

android activity方式的dialog

效果展示


image.png


1、设置主题(在AndroidManifest的activity中设置

android:theme="@style/DialogActBgStyle")
    <style name="DialogActBgStyle" parent="Theme.AppCompat.Light.NoActionBar">
        <!--是否悬浮在activity上 为true时 如果手机有虚拟的底部导航  会把底部虚拟的导航遮挡-->
        <item name="android:windowIsFloating">false</item>
           <!--透明是否-->
        <item name="android:windowIsTranslucent">true</item>
        <item name="android:background">#00000000</item>
        <item name="android:windowBackground">@color/transparent</item>
        <!--模糊-->
        <item name="android:backgroundDimEnabled">true</item>
        <!--设置没有窗口标题、dialog标题等各种标题-->
        <item name="android:windowNoTitle">true</item>
        <item name="android:title">@null</item>
        <item name="android:dialogTitle">@null</item>
        <item name="android:windowFullscreen">true</item>
    </style>

2、代码设置(在oncreate方法中设置)

//这一步很关键(如果不设置背景是黑色或者白色)
        window.setBackgroundDrawable(getDrawable(R.drawable.tr))
        val params = window.attributes
        params.width = ScreenUtils.getScreenWidth()
        params.height = ScreenUtils.getScreenHeight()
        params.gravity = Gravity.CENTER
        //透明度
        params.dimAmount = 0.25f
        window.attributes = params

3、代码资源  R.drawable.tr

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
     <solid android:color="#00ffffff" />
</shape>
目录
相关文章
|
4天前
|
Android开发 开发者
Android UI设计中,Theme定义了Activity的视觉风格,包括颜色、字体、窗口样式等,定义在`styles.xml`。
【6月更文挑战第26天】Android UI设计中,Theme定义了Activity的视觉风格,包括颜色、字体、窗口样式等,定义在`styles.xml`。要更改主题,首先在该文件中创建新主题,如`MyAppTheme`,覆盖所需属性。然后,在`AndroidManifest.xml`中应用主题至应用或特定Activity。运行时切换主题可通过重新设置并重启Activity实现,或使用`setTheme`和`recreate()`方法。这允许开发者定制界面并与品牌指南匹配,或提供多主题选项。
16 6
|
7天前
|
Android开发
Android中如何动态的调整Dialog的背景深暗
在Android开发中,Dialog和DialogFragment可通过设置`Window`的`backgroundDimAmount`来控制背景变暗,突出对话框。在DialogFragment的`onCreateDialog`或`onViewCreated`中,获取`Dialog`的`Window`,设置`LayoutParams.dimAmount`(例如0.5f)并添加`FLAG_DIM_BEHIND`标志。要动态调整,可保存`LayoutParams`并在需要时更新。对于Dialog,创建时直接设置同样属性。还可以通过定义主题样式设置背景模糊程度。
20 7
|
5天前
|
Android开发 开发者
Android UI中的Theme定义了Activity的视觉风格,包括颜色、字体、窗口样式等。要更改主题
【6月更文挑战第25天】Android UI中的Theme定义了Activity的视觉风格,包括颜色、字体、窗口样式等。要更改主题,首先在`styles.xml`中定义新主题,如`MyAppTheme`,然后在`AndroidManifest.xml`中设置`android:theme`。可应用于全局或特定Activity。运行时切换主题需重置Activity,如通过`setTheme()`和`recreate()`方法。这允许开发者定制界面以匹配品牌或用户偏好。
12 2
|
16天前
|
Android开发
Android面试题之activity启动流程
该文探讨了Android应用启动和Activity管理服务(AMS)的工作原理。从Launcher启动应用开始,涉及Binder机制、AMS回调、进程创建、Application和Activity的生命周期。文中详细阐述了AMS处理流程,包括创建ClassLoader、加载APK、启动Activity的步骤,以及权限校验和启动模式判断。此外,还补充了activity启动流程中AMS的部分细节。欲了解更多内容,可关注公众号“AntDream”。
16 1
|
23天前
|
存储 Java Android开发
Android上在两个Activity之间传递Bitmap对象
Android上在两个Activity之间传递Bitmap对象
16 2
|
2天前
|
Android开发 UED 开发者
Android Activity启动模式详解
Android Activity启动模式详解
4 0
|
2天前
|
Android开发 UED
Android Activity的生命周期详解
Android Activity的生命周期详解
4 0
|
2天前
|
Android开发
Android Activity跳转详解
Android Activity跳转详解
5 0
|
Java Android开发 Kotlin
Android 自定义加载动画Dialog弹窗
Android 自定义加载动画Dialog弹窗
305 0
Android 自定义加载动画Dialog弹窗
|
XML Android开发 数据格式
Android自定义Dialog以控制其位置和宽高
Android自定义Dialog以控制其位置和宽高
425 0