android 修改AlertDialog的黑色背景的两种方式及圆角边框的设置

修改黑色背景

第一种方式

直接使用AlertDialog.Builder的方法

AlertDialog dialog = new AlertDialog.Builder(this)
                    .create();
dialog.setInverseBackgroundForced(true);// 背景变成了白色

第二种方式

自定义一个布局,在dialog显示之后,重新设置dialog的内容view

AlertDialog dialog = new AlertDialog.Builder(this)
                    .create();
dialog.show();
Window window = dialog.getWindow();
window.setContentView(R.layout.custom_alert_dialog);
// 设置背景透明
window.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));

注意:一定要在show()方法之后重新设置布局。至于为什么,实践出真知
android 修改AlertDialog的黑色背景的两种方式及圆角边框的设置_第1张图片

AlertDialog的圆角边框

设置修改Alertdialog黑色背景的第二种方式的布局文件R.layout.custom_alert_dialog的背景为圆角边框即可
下面是布局及圆角的代码
R.layout.custom_alert_dialog.xml


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="@drawable/bg_dialog"
    android:paddingRight="20dp"
    android:paddingLeft="20dp"
    android:orientation="vertical">
    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="编辑"/>
    <EditText
        android:id="@+id/et_countDownWord"
        android:layout_width="match_parent"
        android:layout_height="wrap_content" />
    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content">
        <Button
            android:layout_weight="1"
            android:text="取消"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
        <Button
            android:layout_weight="1"
            android:text="确定"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content" />
    LinearLayout>
LinearLayout>

圆角,bg_dialog.xml


<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <corners android:radius="20dp"/>
    
    <solid android:color="#ffffff"/>
shape>

修改自https://www.cnblogs.com/yaowukonga/archive/2012/05/19/2508743.html

https://blog.csdn.net/csdnzouqi/article/details/84337004

你可能感兴趣的:(Android)