【android】动画效果研究(PopupWindow)【3】

    因为PopupWindow不同于view,它不提供setAnimation接口,所以不可使用【android】动画效果研究(view)【1】中所使用的方法。但Android提供了PopupWindow.setAnimationStyle方法。

参考文献:http://gqdy365.iteye.com/blog/1007282

(1)定义动画文件

    与一样,也使用Animation类,对于该类中几种动画效果的定义以及使用,可参加【android】动画效果研究(view)【1】,这里不再重复。也可以参考以上文献。

 

(2)定义style.xml文件

    popupwindow的效果要在style中定义相应的动画并引用刚才定义的动画文件:

<?xml version="1.0" encoding="utf-8"?>
<resources>
	<style 
		name="toast_anim" 
		parent="@android:style/Animation.Dialog" 
		mce_bogus="1">
        <item name="android:windowEnterAnimation">@anim/dialog_enter_action</item>
        <item name="android:windowExitAnimation">@anim/dialog_enter_action</item>
    </style> 
</resources>

 

(3)在Activity中调用setAnimationStyle

View TestView = getLayoutInflater().inflate(R.layout.dialog, null);     
PopupWindow testPop = new PopupWindow(TestView); 
testPop.setAnimationStyle(R.style.toast_anim);
testPop.showAtLocation(v, Gravity.CENTER, 0, 0);
testPop.update(0,0,300,200);
posted @ 2012-01-18 16:23  风倾清凌  阅读(5042)  评论(1编辑  收藏  举报