Dialog 带白色的边的处理方法 | 码农家园

代码种设置 使用 setBackgroundDrawableResource dialog.getWindow().setBackgroundDrawableResource(android.R.color.transparent);//设置背景透明 下面写的一个半自定义的弹框,(这个主要是写了了插入布局,没有通用自己就不叫它自定义了) AlertDialog.Builder builder = new AlertDialog.Builder(mActivity); builder.setCancelable(false); View cinema_view = getLayoutInflater().inflate(R.layout.cinema_fragment_pop, null); builder.setView(cinema_view); cinemaDialog = builder.create(); cinemaDialog.show(); Window window = cinemaDialog.getWindow(); if (window != null) { WindowManager.LayoutParams lp = window.getAttributes(); window.setBackgroundDrawableResource(android.R.color.transparent);//设置背景透明 lp.gravity = Gravity.CENTER; lp.width = mActivity.getResources().getDimensionPixelOffset(R.dimen.dp_1060);//宽高设置具体大小 lp.height = mActivity.getResources().getDimensionPixelOffset(R.dimen.dp_630); cinemaDialog.getWindow().setAttributes(lp); } 也可以通过设置属性来取消,看代码 <!-- 通用dialog --> <style name="transparent_dialog" parent="android:style/Theme.Dialog"> <!-- 有无边框 --> <item name="android:windowFrame">@null</item> <!-- 是否浮现在activity之上 --> <item name="android:windowIsFloating">true</item> <!-- 是否透明 --> <item name="android:windowIsTranslucent">true</item> <!-- 背景透明 --> <item name="android:windowBackground">@android:color/transparent</item> <!-- 模糊 --> <item name="android:backgroundDimEnabled">true</item> <!--无标题 --> <item name="android:windowNoTitle">true</item> </style>
你可能想看的