设置自定义有动画dialog

public class CustomDialog extends Dialog {

 

public CustomDialog(Context context, boolean cancelable, OnCancelListener cancelListener) {
  super(context, cancelable, cancelListener);
  init(context);
 }

 public CustomDialog(Context context, int theme) {
  super(context, theme);
  init(context);
 }

 public CustomDialog(Context context) {
  super(context, R.style.dialog_style);
  init(context);
 }

 

/**
   * 设置有动画的自定义dialog
   * @version 1.0
   * @createTime 2014年9月9日,上午9:29:49
   * @updateTime 2014年9月9日,上午9:29:49
   * @createAuthor WangYuWen
   * @updateAuthor WangYuWen
   * @updateInfo (此处输入修改内容,若无修改可不写.)
   *
   *  @param layoutResID 布局文件
   *  @param x  x小于0左移,大于0右移
   *  @param y  y小于0上移,大于0下移
   */
 public void showDialog(int layoutResID, int x, int y) {
  setContentView(layoutResID);

  windowDeploy(x, y);

  // 设置触摸对话框意外的地方取消对话框
  setCanceledOnTouchOutside(true);
  //返回键退出
  setCancelable(true);
  show();
 }

 // 设置窗口显示
 public void windowDeploy(int x, int y) {
  window = getWindow(); // 得到对话框
  window.setWindowAnimations(R.style.dialogWindowAnim); // 设置窗口弹出动画
  window.setBackgroundDrawableResource(R.color.transparent); // 设置对话框背景为透明
  WindowManager.LayoutParams wl = window.getAttributes();
  // 根据x,y坐标设置窗口需要显示的位置
  wl.x = x; // x小于0左移,大于0右移
  wl.y = y; // y小于0上移,大于0下移
  // wl.alpha = 0.6f; //设置透明度
  // wl.gravity = Gravity.BOTTOM; //设置重力
  window.setAttributes(wl);
 }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值