168359631.对于对话框的使用,可以封装一个类,如下只是一个基础: private void showSetNetworkDialog() { // 弹出一个对话框 AlertDialog.Builder builder = new Builder(this); //设置对话框的标题 builder.setTitle("请设置网络"); //设置提示语 builder.setMessage("网络错误,请检查网络状态"); // 添加设置网络的按钮 builder.setPositiveButton("设置网络", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // 激活设置网络的activity,技巧:点击设置网络的图标,查看logCat,看意图的包名和类名 Intent intent = new Intent(); // 采用显示意图激活设置网络的activity // 类名一定要包含包名 intent.setClassName("com.android.settings", "com.android.settings.WirelessSettings"); startActivity(intent); //关闭对话框 finish(); } }); //添加取消按钮 builder.setNegativeButton("取消", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // 点击取消,则finish这个界面 finish(); } }); // 把对话框创建出来然后把它show出来 builder.create().show(); } 2.如果要复用,可以这样进行抽象 private void showSetNetworkDialog(String title,String info,String confirm,String cancel,String packageName,String className) { // 弹出一个对话框 AlertDialog.Builder builder = new Builder(this); //设置对话框的标题 builder.setTitle(title); //设置提示语 builder.setMessage(info); // 添加设置网络的按钮 builder.setPositiveButton(confirm, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // 激活设置网络的activity,技巧:点击设置网络的图标,查看logCat,看意图的包名和类名 Intent intent = new Intent(); // 采用显示意图激活设置网络的activity // 类名一定要包含包名 intent.setClassName(packageName,className); startActivity(intent); //关闭对话框 finish(); } }); //添加取消按钮 builder.setNegativeButton(cancel, new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { // 点击取消,则finish这个界面 finish(); } }); // 把对话框创建出来然后把它show出来 builder.create().show(); }