改变AlertDialog的大小

在做安卓电视端的项目时,系统弹出的AlertDialog非常丑,还有长宽不合适,所以就想办法,第一种时弹出一个自定义的Activity,但是这种方式比较麻烦,所以看了文档,直接对修改AlertDialog的长宽,不使用系统默认的样式。

//设置弹出框 QRMainActivity.this为Acivity
                AlertDialog.Builder builder=new AlertDialog.Builder(QRMainActivity.this);
                AlertDialog dialog=builder.create();

                //设置标题
                dialog.setTitle("请连接网络!");
                //设置图片
                dialog.setIcon(R.drawable.app_icon);

                //设置确定按钮监听, 第一个参数有三种形式
                // DialogInterface.BUTTON_POSITIVE 确定
                // DialogInterface.BUTTON_NEGATIVE} 取消
                // DialogInterface.BUTTON_NEUTRAL 忽略
                dialog.setButton(DialogInterface.BUTTON_POSITIVE, "设置", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });

                //不做任何操作
                dialog.setButton(DialogInterface.BUTTON_NEGATIVE, "知道了", new DialogInterface.OnClickListener() {
                    @Override
                    public void onClick(DialogInterface dialog, int which) {

                    }
                });

                //先调用这个方法,然后才设置dialog的长宽
                dialog.show();

                //获取屏幕的长宽
                WindowManager window=getWindowManager();
                Display display=window.getDefaultDisplay();
                int screenheight=display.getHeight();
                int screenWidth=display.getWidth();

                //设置弹出框的长宽
                dialog.getWindow().setLayout(screenWidth/3,screenheight/4);

注意:必须调用dialog.show(),然后才设置dialog的长宽

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值