3

アニメーションで push_up を使用してビューの下部から表示され、push_up out アニメーションで閉じているときにポップアップ ウィンドウをアニメーション化しようとしています。しかし、機能していません。ポップアップはデフォルトのアニメーションで正常に表示されます (非常に高速)。これが私のコードです:

push_up_in.xml

<set xmlns:android="http://schemas.android.com/apk/res/android" >
    <translate
        android:duration="1000"
        android:fromYDelta="100%p"
        android:toYDelta="0" />

    <alpha
        android:duration="1000"
        android:fromAlpha="0.0"
        android:toAlpha="1.0" />
</set>

push_up_out.xml

<set xmlns:android="http://schemas.android.com/apk/res/android" >
    <translate
        android:duration="1000"
        android:fromYDelta="0"
        android:toYDelta="-100%p" />

    <alpha
        android:duration="1000"
        android:fromAlpha="1.0"
        android:toAlpha="0.0" />
</set>

スタイル.xml

<style name="popup_anim">
    <item name="android:windowEnterAnimation">@anim/push_up_in</item>
    <item name="android:windowExitAnimation">@anim/push_up_out</item>
</style>

ポップアップウィンドウがコードで表示される場所:

final PopupWindow pw = new PopupWindow(popview, 100, 100, true);
pw.setBackgroundDrawable(new BitmapDrawable());
pw.setOutsideTouchable(true);
pw.setAnimationStyle(R.style.popup_anim);
pw.showAtLocation(this.findViewById(R.id.map_layout),
                    Gravity.BOTTOM, 0, 0);
View map = (View) findViewById(R.id.map);
int mapwidth = map.getWidth();
int mapheight = map.getHeight();
int popuph = (int) (mapheight * 0.3);
pw.update(mapwidth, popuph);

何かご意見は?

4

1 に答える 1

1

コンテンツ ビューを設定した場所がわかりません。表示するものが何もない可能性があります。そうでない場合は、背景のドローアブルに null を渡し、レイアウトに背景を設定してみてください。これにより、プロジェクトで色が間違って表示されるという問題が解決されました。

于 2016-01-26T13:26:12.797 に答える