Nod*_*Dad 7 java animation android dialog dismiss
所以现在默认情况下,Dialog在被解雇时正在执行这个zoomin淡出效果 dialog.dismiss();
如何将其覆盖为我自己的动画?
AlphaAnimation fadeOut = new AlphaAnimation(1, 0);
fadeOut.setDuration(600);
view.setAnimation(fadeOut);
view.startAnimation(fadeOut);
Run Code Online (Sandbox Code Playgroud)
编辑:
感谢答案,我能够弄清楚.而不是修改解雇,我做了动画然后解雇它.
public void fadeOutHUD(View view) {
AlphaAnimation fadeOut = new AlphaAnimation(1, 0);
fadeOut.setDuration(800);
view.setAnimation(fadeOut);
view.startAnimation(fadeOut);
fadeOut.setAnimationListener(new Animation.AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
dismiss();
}
@Override
public void onAnimationRepeat(Animation animation) {
}
});
}
public void dismissHUD() {
fadeOutHUD(findViewById(R.id.progressHud));
}
Run Code Online (Sandbox Code Playgroud)
并且这样称呼它 dialog.dismissHUD();
我不认为你需要覆盖 Dialog.dismiss()
您只需根据需要为对话框设置动画,并在动画结束时将其关闭.
@Override
public void onAnimationEnd(Animation animation) {
dialog.dismiss();
}
Run Code Online (Sandbox Code Playgroud)
你需要利用
dialog.getWindow().getAttributes().windowAnimations
用于覆盖输入和退出/关闭动画的标志.
这篇博客文章解释了如何很好地覆盖动画:http: //flowovertop.blogspot.in/2013/03/android-alert-dialog-with-animation.html
归档时间: |
|
查看次数: |
6855 次 |
最近记录: |