我想将动画设置为我的Dialog。这里的挑战是我想以编程方式执行此操作。
原因是我有太多不同大小的对话框,我不想为每种类型的对话创建一个新的animation
文件。
截至目前,如果我正在做的话:
res/anim/anim_myDialog_SlideUp.xml
档案
<?xml version="1.0" encoding="UTF-8" ?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate android:fromXDelta="0%"
android:toXDelta="0%"
android:fromYDelta="200%"
android:toYDelta="0%"
android:duration="400"/>
</set>
res/anim/anim_myDialog_SlideDown.xml
档案
<?xml version="1.0" encoding="UTF-8" ?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
android:shareInterpolator="false">
<translate android:fromXDelta="0%"
android:toXDelta="0%"
android:fromYDelta="0"
android:toYDelta="200%"
android:duration="400"/>
</set>
在我的res/values/styles.xml
文件中
<style name="slideUpAndDown">
<item name="android:windowEnterAnimation">@anim/anim_myDialog_SlideUp</item>
<item name="android:windowExitAnimation">@anim/anim_myDialog_SlideDown</item>
</style>
<style name="myDialogSlideUpAndDown" parent="@android:style/Theme.Dialog">
<item name="android:windowAnimationStyle">@style/slideUpAndDown</item>
</style>
在我的MainActivity.cs
文件中
Dialog myDialog = new Dialog(this, Resource.Style.myDialogSlideUpAndDown);
我可以通过编程方式创建动画,没有任何问题。问题是如何将这些动画设置为我的Dialog?
如果我创建了一个Dialog
而没有在构造函数中设置它的样式:
Dialog myDialog = new Dialog(this);
然后我可以选择这样做来设置它的动画:
myDialog.Window.SetWindowAnimations(int);
SetWindowAnimations
需要int
。我可以手动创建此动画吗int
吗?
很抱歉这么长的解释,谢谢你的时间。