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

  • 相关阅读:
    Kafka如何保证读写的跨分区与会话
    Kafka topic中的partition的leader选举
    Kafka为什么这么快
    sqoop导入导出
    为什么要用redis去重
    bypass SortShuffleManager的bypass运行机制
    大数据常用端口号
    vector基础
    【拓扑排序】
    【POJ】Crazy Search(hash)
  • 原文地址:https://www.cnblogs.com/tangZH/p/8146006.html
Copyright © 2011-2022 走看看