AlterDialog黑边问题

来源:互联网 发布:ubuntu下载软件包 编辑:程序博客网 时间:2024/05/09 12:37

         使用AlterDialog时,如果要对Dialog自定义好看的背景,可能会遇见黑边去不掉的问题, 网上使用的 把边距去掉, 可以解决背景是方形的问题,如果背景是比较复杂的图形,黑边还是有一点,   解决方法,只能是模拟对话框展示的形式 做一个效果。

         比较笨的方法 就是把界面根布局 改为FramLayout ,添加一层 对话框 布局,代码中控制隐藏/显示,呵呵,注意点击其他地方的时候要屏蔽事件,可以定义空的点击事件, 还要处理 返回键 菜单键等,有点麻烦 但简单;

        还可以使用windowManager.addView(dialogView, wmParams);  方法,自定义Dialog类,源码中也是这么干的,不过 很麻烦 很麻烦,还且问题多多,还经常崩溃,

windowManager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
  wmParams = new WindowManager.LayoutParams();

  // 设置图片格式,效果为背景透明
  wmParams.format = PixelFormat.RGBA_8888;

  // 在有touch事件的时候要将flags设置为FLAG_ALT_FOCUSABLE_IM,touch事件ACTION_UP之后,又要将其设置为FLAG_NOT_FOCUSABLE;
  // wmParams.flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;
  wmParams.flags = WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE;

  dialogView = LayoutInflater.from(context).inflate(R.layout.inner_dialog, null);
  normalDialogView = LayoutInflater.from(context).inflate(R.layout.dialog_datamodify, null);
  initViews();
  llContent = (LinearLayout) dialogView.findViewById(R.id.ll_content);

 

   最后,我老大牛逼的 修改了源码把黑边去掉了,  佩服得五体投递啊,好像把那个类拿过来,不过已经看不到了, 对于我这种才学习了Android半年多的新手 让我怎么看得懂源码呀,     哪位大神有好的方法 去掉黑边的吗??  拜托告诉下我啦~

 

原创粉丝点击