自定义对话框Android中的按钮

时间:2014-04-02 13:12:49

标签: android button customdialog

这是我的代码

    protected void markerTouched(Marker marker) {


                final Dialog dialog = new Dialog(context);


                dialog.setContentView(R.layout.custom_dialog);


                dialog.setCanceledOnTouchOutside(true);

                dialog.show();      

                 Button declineButton = (Button) dialog.findViewById(R.id.b_close);
                    // if decline button is clicked, close the custom dialog
                    declineButton.setOnClickListener(new OnClickListener() {
                        public void onClick(View v) {
                            // Close dialog
                            dialog.dismiss();
                        }
                    });
     }

我在这一行中发现了一个错误:

 declineButton.setOnClickListener(new OnClickListener() 

setOnClickListner上的错误:

  

类型View中的方法setOnClickListener(View.OnClickListener)不适用于参数(new DialogInterface.OnClickListener(){})

OnClickListener()中的其他人:

  

新的DialogInterface.OnClickListener(){}类型必须实现继承的抽象方法DialogInterface.OnClickListener.onClick(DialogInterface,int)

有人可以解释我要做什么吗?

3 个答案:

答案 0 :(得分:2)

试试这个:

dialog = new Dialog(this);
dialog.setContentView(R.layout.custom_dialog);
dialog.setTitle("Custom Dialog");


Button dialog_btn = (Button) dialog.findViewById(R.id.dialog_button);
dialog_btn.setOnClickListener(new View.OnClickListener() 
{
    // Perform button logic
}

这很重要:

dialog_btn.setOnClickListener(new View.OnClickListener() 

<强> View.OnClcikListener

希望这有帮助。

答案 1 :(得分:1)

你导入错误。由于您为按钮设置onClickListener,因此您需要View.OnClickListener,但导入为DialogInterface.OnClickListener

答案 2 :(得分:0)

请尝试

declineButton.setOnClickListener(new View.OnClickListener() {

    public void onClick(View arg0) {
                        // TODO Auto-generated method stub

                    }




});