zoukankan      html  css  js  c++  java
  • 异常记录-Dialog样式踩坑

    好久没记录文档了,拖了老半个月,终于空下来时间,为了避免以后踩坑,必须记录记录。

    背景:

    为activity设置样式为弹窗activity

    异常一:

    activity设置style后,布局不能够正常显示,由于固定了activity的高度(例如500),当高度超出500后,布局展示异常,只展示底部布局。

    异常二:

    在有虚拟按键手机上弹出该对话框,对话框与布局会重叠在一起

    异常代码如下:

     <!-- ActionSheet 对话框样式-->
        <style name="YTDialogActivityStyle" parent="AppTheme">
            <item name="android:windowBackground">@android:color/transparent</item>
            <item name="android:windowContentOverlay">@null</item>
            <!-- 浮于Activity之上 -->
            <item name="android:windowIsFloating">true</item>
            <!-- 边框 -->
            <item name="android:windowFrame">@null</item>
            <item name="android:windowFullscreen">false</item>
            <item name="android:navigationBarColor">@color/transparent</item>
            <item name="android:statusBarColor">@color/transparent</item>
            <!-- Dialog以外的区域模糊效果 -->
            <item name="android:backgroundDimEnabled">true</item>
            <!-- 无标题 -->
            <item name="android:windowNoTitle">true</item>
            <!-- 半透明 -->
            <item name="android:windowIsTranslucent">true</item>
            <item name="android:layout_gravity">bottom</item>
            <item name="android:layout_width">match_parent</item>
            <!-- ActionSheet进入及退出动画 -->
            <item name="android:windowAnimationStyle">@style/YTDialogActivityAnimation</item>
        </style>

    原因分析:

    异常一:经排查发现,是"android:layout_gravity"属性设置导致,修改为top可解决该问题。

    异常二:"android:windowIsFloating"属性设置导致,修改为false可解决问题。

    修改后代码:

        <!-- ActionSheet 对话框样式-->
        <style name="YTDialogActivityStyle" parent="AppTheme">
            <item name="android:windowBackground">@android:color/transparent</item>
            <!-- 无标题 -->
            <item name="android:windowNoTitle">true</item>
            <!-- 半透明 -->
            <item name="android:windowIsTranslucent">true</item>
            <!-- ActionSheet进入及退出动画 -->
            <item name="android:windowAnimationStyle">@style/YTDialogActivityAnimation</item>
        </style>

    最好是需要什么设置什么,指不定多少坑。

     
  • 相关阅读:
    SQL Server中的执行引擎入门
    SQL Server复制入门(一)复制简介
    Django 代码片断收集(持续更新)
    今天思路有点乱,随便记一点关于 xmlrpc 的
    PIL 学习笔记(1)
    Django newforms
    在 Django 的 View 中利用 function decorator 可实现一定程度的代码重用
    今天在 Linux 上顺利编译 PIL 1.1.6 成功
    用 PIL 写了个简单的缩略图生成程序
    [转贴] 中药内外合治急慢性鼻窦炎
  • 原文地址:https://www.cnblogs.com/fangg/p/13608771.html
Copyright © 2011-2022 走看看