首页 > 解决方案 > 如何更改警报对话框中按钮的颜色?

问题描述

我在一个社交应用程序中工作,当用户想要编辑他们的提要时,我想给他们一个弹出警报对话框,用户可以在其中编辑他们的帖子。我尝试了以下代码,但给出的结果并不好 警报对话框

我想改变颜色并想要更好的设计.. 可以为此做些什么

private void EditCurrentPost(String description)
    {
        AlertDialog.Builder builder =  new AlertDialog.Builder(ClickPostActivity.this);
        builder.setTitle("Edit post");
        final EditText inputField = new EditText(ClickPostActivity.this);
        inputField.setText(description);
        builder.setView(inputField);

        builder.setPositiveButton("Update", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
              ClickPostRef.child("description").setValue(inputField.getText().toString());
              Toast.makeText(ClickPostActivity.this,"Post Updated",Toast.LENGTH_SHORT).show();

            }
        });
        builder.setNegativeButton("Cancel", new DialogInterface.OnClickListener() {
            @Override
            public void onClick(DialogInterface dialog, int which) {
           dialog.cancel();
            }
        });
        Dialog dialog = builder.create();
        dialog.show();
        dialog.getWindow().setBackgroundDrawableResource(android.R.color.holo_purple);
    }

标签: javaandroidandroid-alertdialog

解决方案


有一种非常简单的方法可以使用自定义布局制作对话框:请查看以下代码:

final Dialog dialog = new Dialog(MainActivity.this);
    dialog.setContentView(R.layout.dialog_news_description);//Your custom layout
    TextView sometextview = dialog.findViewById(R.id.textView);// Textview in your custom layout
    Button somebutton = dialog.findViewById(R.id.button_done);// Button in your layout
    somebutton.setOnClickListener(new View.OnClickListener() {//on button click listener
        @Override
        public void onClick(View view) {
            //DO your job.... 
            //then...
            dialog.dismiss();//dismiss the dialog
        }
    });
    dialog.show();

推荐阅读