我正在尝试编写一个自定义对话框,其中包含用户的名称。我得到一个“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();
}
答案 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;