关于屏幕适配问题的工作<个人记录>

本文记录了一次解决Android屏幕适配问题的过程,特别是在使用Dialog时遇到的高度不适配问题。通过设置Dialog的窗口布局参数,并排查LinearLayout的布局错误,最终实现了Dialog宽度占屏幕3/5,高度充满屏幕的效果。
摘要由CSDN通过智能技术生成

        需要得到一种点击得到一个菜单的功能,由于需求,选择了dialog;

         dialog = new Dialog(a);

        dialog.getWindow().requestFeature(Window.FEATURE_NO_TITLE);//去掉标题
        dialog.setContentView(menu);
        dialog.getWindow().setBackgroundDrawable(new ColorDrawable(0));
        int screenWidth = getResources().getDisplayMetrics().widthPixels;
        int screenHeight = getResources().getDisplayMetrics().heightPixels;
        int statusBarHeight = getStatusBarHeight();
                                        //getResources().getDisplayMetrics().density为手机像素密度,值为px/dp得到的
        int tabHeight = (int)getResources().getDisplayMetrics().density*45;
        int m= 1-(statusBarHeight+tabHeight)/screenHeight;
        Window dialogWindow = dialog.getWindow();
        dialogWindow.setGravity(Gravity.RIGHT | Gravity.BOTTOM);

        dialogWindow.setLayout(screenWidth/5*3, screenHeight -statusBarHeight-tabHeight);


       宽度已经完成了效果,占屏幕的3/5,但是高度总是不能不满,找了半天找不到原因,最后发现错在了布局的LinearLayout中应该为match-parent


     

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值