总体为这四步
第一步
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center_horizontal" > <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="你确定要退出吗?" android:textSize="32dp" android:textColor="#e61414" android:textStyle="bold" android:layout_marginTop="300sp"/> <LinearLayout android:layout_width="wrap_content" android:layout_height="wrap_content" android:orientation="horizontal" android:layout_marginTop="25dp" > <Button android:id="@+id/yes" android:text="确定" android:textColor="#FFEB3B" android:layout_width="120dp" android:layout_height="50dp" /> <Button android:id="@+id/no" android:text="取消" android:textColor="#FFEB3B" android:layout_width="120dp" android:layout_height="50dp" android:layout_marginLeft="25dp"/> </LinearLayout> </LinearLayout>
第二步
<!-- Status bar color. --> <item name="android:statusBarColor" tools:targetApi="l">?attr/colorPrimaryVariant</item> <!-- Customize your theme here. --> </style>
第三步
package com.example.dialogn_test; import android.app.Dialog; import android.content.Context; import android.view.View; import androidx.annotation.NonNull; //继承Dialog后会报错,选择提示里的第一项是没有style时的情况,第二项是有时的情况 public class mydialogn extends Dialog { public mydialogn(@NonNull Context context, int themeResId) { super(context, themeResId); //将第一步的布局与此步联系起来 setContentView(R.layout.diglogn); //当点击确定时所发生的,yes是自定义对话框中的确定按钮的id findViewById(R.id.yes).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { System.exit(0); } }); //当点击取消时发生的,no与yes相同 findViewById(R.id.no).setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { dismiss(); } }); } }
第四步
第二个参数是value里面的theme主题里你所设计主题的id