天天看點

popWindow的一些彈出動畫的設定

在安卓開發中,一般會有設定popwindow的彈出動畫樣式的需求的,基于做過的項目,我在此做一下總結記錄。

popWindow在底部彈出(pop_show)

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:duration="500"
        android:fromYDelta="100%p"
        android:toYDelta="0" />
    <alpha
        android:duration="500"
        android:fromAlpha="0.0"
        android:toAlpha="1.0" />
</set>
           

popWindow在底部消失(pop_hidden)

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:duration="500"
        android:fromYDelta="0"
        android:toYDelta="100%p" />
    <alpha
        android:duration="500"
        android:fromAlpha="1.0"
        android:toAlpha="0.0" />
</set>
           

popWindow的底部動畫

<!--pop從底部出來-->
    <style name="my_popwindow">
     <item name="android:windowEnterAnimation">@anim/pop_show</item>
        <item name="android:windowExitAnimation">@anim/pop_hidden</item>
    </style>
           

popWindow在左側彈出(pop_left_show)

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 定義從右向左進入的動畫 -->
    <translate
        android:duration="500"
        android:fromXDelta="-100%"
        android:toXDelta="0" />
</set>
           

popWindow在左側彈出(pop_left_hidden)

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:duration="500"
        android:fromXDelta="0"
        android:toXDelta="-100%" />
</set>
           

popWindow右側彈出(pop_right_show)

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 定義從右向左進入的動畫 -->
    <translate
        android:duration="500"
        android:fromXDelta="100%"
        android:toXDelta="0" />
</set>
           

popWindow右側消失(pop_right_hidden)

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate
        android:duration="500"
        android:fromXDelta="0"
        android:toXDelta="100%" />
</set>