android 自定义对话框使对话框铺满全屏。边缘无缝对接,

效果图如下:

Android对话框图片全屏_第1张图片

调用方式:

 new AdFullDialog(MainActivity.this, “”, “”, “”, “”).show();

 对话框代码:

 /**     * 全屏广告     */    public class AdFullDialog extends Dialog {        private Context context;        private String mUrl;        Bitmap bmp;        String mtarget_url;        String Target_url;        ImageView ivAdvertising;        TextView mtv_second;        LinearLayout layout_skip;        public AdFullDialog(Context context, String url, String target_url, String Deep_link, List deep_link_monitor_url) {            // 更改样式,把背景设置为透明的            super(context, R.style.dialog);            this.context = context;            mUrl = url;            mtarget_url = target_url;            Log.e("getTarget_url111", mtarget_url);        }        @Override        protected void onCreate(Bundle savedInstanceState) {            super.onCreate(savedInstanceState);            requestWindowFeature(Window.FEATURE_NO_TITLE);            calculateHeightAndWidth();        }        @Override        public void show() {            super.show();            /**             * 设置宽度全屏,要设置在show的后面             */            WindowManager.LayoutParams layoutParams = getWindow().getAttributes();            layoutParams.gravity = Gravity.BOTTOM;            layoutParams.width = ViewGroup.LayoutParams.MATCH_PARENT;            layoutParams.height = ViewGroup.LayoutParams.MATCH_PARENT;            getWindow().getDecorView().setPadding(0, 0, 0, 0);            getWindow().setAttributes(layoutParams);        }        /**         * 按实际图片比例对其的宽高进行缩放         */        private void calculateHeightAndWidth() {            initAdView();        }        @SuppressLint("ResourceType")        private void initAdView() {            new Thread(getPicByUrl).start();//获取图片            setContentView(R.layout.activity_ad);//加载自定义布局            ivAdvertising = findViewById(R.id.iv_advertising);            layout_skip = findViewById(R.id.layout_skip_close);            mtv_second = findViewById(R.id.tv_second);            ivAdvertising.setOnTouchListener(new TouchListenerImp());            ivAdvertising.setOnClickListener(new View.OnClickListener() {                @Override                public void onClick(View view) {                                   }            });            layout_skip.setOnClickListener(new View.OnClickListener() {                @Override                public void onClick(View view) {                    dismiss();                }            });        }        Runnable getPicByUrl = new Runnable() {            @Override            public void run() {                try {                    bmp = GetImgUtil.getImage(mUrl);// BitmapFactory:图片工厂!                    Log.i("ggggg", bmp.toString());                    sendMsg(1);                } catch (Exception e) {                    Log.i("ggggg", e.getMessage());                }            }        };                    /**         * 获取点击对话框坐标         */        private class TouchListenerImp implements View.OnTouchListener {            public boolean onTouch(View v, MotionEvent event) {                ClickXY clickXY = new ClickXY();                NumberFormat nf = new DecimalFormat("#.#");                double a = 3.1;                SLOT_X = nf.format(event.getX());                SLOT_Y = nf.format(event.getY());//            Log.e("LZ", "---SLOT_X=" + event.getRawX() + "----SLOT_X=" + event.getRawY())                DOWN_X = nf.format(event.getRawX());                DOWN_Y = nf.format(event.getRawY());                clickXY.setSLOT_X(SLOT_X);                clickXY.setSLOT_Y(SLOT_Y);                clickXY.setDOWN_X(DOWN_X);                clickXY.setDOWN_Y(DOWN_Y);                Log.e("LZ", "---SLOT_X=" + event.getRawX() + "----SLOT_X=" + event.getRawY() + "DOWN_X=" + DOWN_X + "DOWN_Y=" + DOWN_Y);                return false;            }        }    }

XML文件:

<?xml version="1.0" encoding="utf-8"?>                            

                                                                                                                                                                    -END

更多相关文章

  1. android如何获取url指定的图片资源
  2. android---图片切换
  3. Android ImageView图片显示点击背景切换
  4. Android中图片占用内存的计算
  5. Android imageView图片按比例缩放(转)
  6. android中九宫图整齐排列(图片处理)
  7. Android studio实现左右滑动切换图片
  8. Android-给图片添加暗影
  9. Java和Android Http连接程序:使用java.net.URL 下载服务器图片到

随机推荐

  1. Failed to fetch URL https://dl-ssl.goo
  2. 2、Android应用程序基本特性
  3. android 7.0 ,6.0本地多语言切换失效
  4. 小技巧及总结
  5. Android简单注册表单
  6. Android studio 遇到Android SDK : Error
  7. android 录像和拍照功能
  8. Android 单选按钮Radio的使用
  9. Android布局属性全面剖析
  10. scrollView嵌套recyclerView 显示不全