自定义对话框的OnClick侦听器问题

时间:2011-10-11 18:42:19

标签: android

我正在尝试编写一个自定义对话框,其中包含用户的名称。我得到一个“OnClickListener无法解析为类型 - 类型View中的方法setOnClickListener(View.OnClickListener)不适用于Eclipse中的参数(new OnClickListener(){})”错误。谁知道我做错了什么?

这是我的代码:

public void getName(){

         Dialog dialog = new Dialog(main.this);
         dialog.setContentView(R.layout.customdialog);
         dialog.setTitle("New Game");
         dialog.setCancelable(true);
         //there are a lot of settings, for dialog, check them all out!
         final EditText inputBox = new EditText(this);

         //set up text
         final TextView text = (TextView) dialog.findViewById(R.id.TextView01);
         text.setText("Enter Your Name...");


         //set up button
         final Button button = (Button) dialog.findViewById(R.id.namebutton);
         button.setOnClickListener(new OnClickListener() {
         public void onClick() {
             String str = inputBox.getText().toString(); 
             setName(str);
             }
         });
         //now that the dialog is set up, it's time to show it    
         dialog.show();
     }

2 个答案:

答案 0 :(得分:3)

您可能只需要更改此

button.setOnClickListener(new OnClickListener() {

到这个

button.setOnClickListener(new View.OnClickListener() {

编辑 - 为了对我们的答案进行组合,还要确保您正在导入正确的课程,正如Cristian所说。

答案 1 :(得分:1)

我猜您导入错误的OnClickListener。确保你有:

import android.view.View.OnClickListener;

而不是

import android.content.DialogInterface.OnClickListener;