1

我正在尝试创建一个自定义对话框。当我调用该setOnClickListner方法时,我得到一个“类型视图中的方法 setOnClickListner 不适用于参数”。我也收到一条错误消息:

public void onClick(View v) 

说“新的 OnClickListener(){} 类型的方法 onClick(View) 必须覆盖或实现超类型方法”。代码:

void ReStartsFamilyFriend()
{
    // custom dialog
    // custom dialog
    final Dialog dialog = new Dialog(this);
    dialog.setContentView(R.layout.gameover);
    dialog.setTitle("Title...");

    // set the custom dialog components - text, image and button


    Button dialogButton = (Button) dialog.findViewById(R.id.butPlay);
    // if button is clicked, close the custom dialog

        //on this line below get the error "The method setOnClickListener(View.OnClickListener) in the type View is not applicable for the arguments "
    dialogButton.setOnClickListener(new OnClickListener() {
        @Override
        /*On the line below I get the error
        "The method onClick(View) of type new OnClickListener(){} must override or implement a supertype 
        method"*/
        public void onClick(View v) {
            dialog.dismiss();
        }
    });
    dialog.show();
}   
4

1 回答 1

0

我觉得您要做的只是使用警报对话框上的按钮以外的其他按钮来解除警报。您最好的选择是使用 VVVVVVVVVVVVVVVVVv

    dialog.setPositiveButton (CharSequence btnText, new DialogInterface.OnClickListener listener{

    @Override
    onClick(DialogInterface dialogInter, int whichBtn){
        dialog.dismiss();
    }
    });

如果您使用 alertDialog.builder,则无需在视图中放置按钮。
在这里查看链接

于 2013-01-23T22:20:05.110 回答