zoukankan      html  css  js  c++  java
  • 如何把activity当成dialog

    在工作中有时候需要把activity当成dialog使用,其实做法挺简单的。

    1、设置activity的style

    <style name="DialogTheme" parent="@android:style/Theme.Dialog">
            <!-- 边框 -->
            <item name="android:windowFrame">@null</item>
            <!-- 是否浮现在activity之上 -->
            <item name="android:windowIsFloating">true</item>
            <!-- 不透明 -->
            <item name="android:windowIsTranslucent">true</item>
            <!-- 无标题 -->
            <item name="android:windowNoTitle">true</item>
            <!-- 背景 -->
            <item name="android:windowBackground">@android:color/transparent</item>
            <!-- 模糊 -->
            <item name="android:backgroundDimEnabled">true</item>
        </style>

    2、把该style应用给该activity

    <activity 
    android:name=".me.widget.DialogActivity" android:theme="@style/LoginDialogTheme">
    </activity>

    要注意一点,如果style的parent是:@android:style/Theme.Dialog,如上面所示

    style name="DialogTheme" parent="@android:style/Theme.Dialog"

    那么该DialogActivity只能继承Activity,不能继承AppCompatActivity

    本来,我们通过在上面的style中能够设置该activityDialog的进出动画,就像这样

    <item name="android:windowEnterAnimation">@anim/dialog_scale_in</item>
    <item name="android:windowExitAnimation">@anim/dialog_scale_out</item>

    但是有些手机不起作用,怎么办呢?重写呗。看下面:

     @Override
        public void finish() {
            super.finish();
            overridePendingTransition(0, R.anim.dialog_scale_out);
        }

    在我使用activity当作dialog的时候,关闭该activityDialog的时动画效果与关闭activity的时候是一样的,即从右边退出,弹出activityDialog的时候动画没问题。这样肯定不行,我要的是无论如何,进出该activityDialog的方式都与普通dialog一样,因此,我重写了退出该activityDialog的时候的动画。

    转载请标明出处:http://www.cnblogs.com/tangZH/p/8146006.html

  • 相关阅读:
    JAVA文件夹上传解决方案
    PHP文件夹上传解决方案
    JSP文件夹上传解决方案
    Web文件夹上传解决方案
    SpringCloud大文件上传解决方案
    SpringBoot大文件上传解决方案
    SpringMVC大文件上传解决方案
    局域网大文件上传解决方案
    香烟过滤嘴模型
    hdu 1010 Tempter of the Bone 奇偶剪枝
  • 原文地址:https://www.cnblogs.com/tangZH/p/8146006.html
Copyright © 2011-2022 走看看