我在自定义Dialog里实现了一个方法setAnim(),可以用来加载进入和消失的动画,实现如下:public void setAnim(int aniXml){
WindowManager.LayoutParams lp = getWindow().getAttributes();
lp.windowAnimations = aniXml;
getWindow().setAttributes(lp);
}在Activity中使用该Dialog时设置了一个动画文件:addBillDialog.setAnim(R.style.MyAnim_FromBottom);此动画文件可以正常生效。在Dialog内有一个按钮实现了点击监听,case块如下:case R.id.tv_outlay:
setAnim(R.style.MyAnim_TRIM);
dismiss();
break;测试发现,点击此按钮时,消失动画并非设置的R.style.MyAnim_TRIM,而是Activity中设置的R.style.MyAnim_FromBottom。将case块内的dismiss()注释掉,点击后通过其他方式让Dialog消失,比如点击空白处,此时的消失动画为点击事件里设置的TRIM,修改成功。请问,为什么这个动画文件没有立即生效?如果想要立即生效,应该怎样做?
目前暂无任何回答
- 0 回答
- 0 关注
- 1297 浏览
添加回答
举报
0/150
提交
取消