2014-04-02 46 views
0

这是我的代码按钮在自定义对话框的Android

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错误:

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

和其他在OnClickListener():

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

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

+0

错误进口。使用'导入android.view.View.OnClickListener' – Raghunandan

回答

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

你有错误的导入。由于要为按钮设置onClickListener需要View.OnClickListener但进口是DialogInterface.OnClickListener

0

请尽量

declineButton.setOnClickListener(new View.OnClickListener() { 

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

        } 




}); 
+0

不工作....在我打开它的对话崩溃的时刻.... – OmgDatProblem

+0

请提供stacktrace或错误日志... – Pavan