2012-01-07 3 views
1

Android 2.2 OSを実行しているGalaxy 1デバイスのコードをチェックすると、ポップアップウィンドウでsetAnimationStyleを使用するコードが作成されました。しかし、Android 2.3.5 OSを実行しているGalaxy 2デバイスで試してみると、アニメーションはそれ以上動作しません。setAnimationStyleがAndroid 2.3.5で動作していない

ここにコードがあります。おかげさまで

これは、これはRES /アニメーション

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

<?xml version="1.0" encoding="UTF-8"?> 
<set xmlns:android="http://schemas.android.com/apk/res/android"> 
     <alpha android:fromAlpha="1.0" android:toAlpha="0.0" android:interpolator="@android:anim/accelerate_interpolator" 
android:duration="500"/> 
</set> 

位置アニメーションは、これは私が活動に使用するコードであるstyle.xmlに

<style name="AnimationPopup" parent="android:Animation"> 
     <item name="@android:windowEnterAnimation">@anim/popup_menu</item> 
    <item name="@android:windowExitAnimation">@anim/fadeout</item> 
</style> 

アニメーションの定義である:

_menu = new PopupWindow(googlePopupInflator); 
_menu.setOutsideTouchable(true); 
_menu.setAnimationStyle(R.style.AnimationPopup); 
_menu.showAtLocation(getWindow().getDecorView(), Gravity.BOTTOM, 0, 0); 

答えて

0

2.3.4に移動したときに同じ問題が発生しました 回避方法: PopupWindowの内部にあります。 私のPopupWindowには、メインの線形レイアウトが含まれていて、その内部に子ライナーレイアウトがあります。 メインの線形レイアウトをアニメーション化しようとしました - 成功しませんでした。 次に、子レイアウトのアニメーション化を試み、成功しました。それぞれのアニメーションにアニメーション(アニメーションの異なるインスタンス)を適用してPopupWindowを表示した直後にそれらをアニメーション化しました。 PopupWindowが単独でアニメーション化されているかのように、それらはすべて同じ時間にスライドします。

関連する問題