Android按钮OnClick错误

时间:2014-07-03 15:45:34

标签: android

我正在尝试实现简单的按钮单击事件,但在编译时出现代码错误。

以下是完整的代码:

public class MainActivity extends Activity{

Button button1;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    button1 = (Button) findViewById(R.id.button1);

    addListenerOnButton();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
}

public void addListenerOnButton() {
    button1 = (Button) findViewById(R.id.button1);
    button1.setOnClickListener(new OnClickListener() {
        public void onClick(View arg0) { 

        }
    });
}
}

编译器在addListenerOnButton方法中给出错误,如下所示:

enter image description here

请帮忙。

3 个答案:

答案 0 :(得分:4)

button1.setOnClickListener(new OnClickListener() {
    public void onClick(View arg0) { 

    }
});

更改为

button1.setOnClickListener(new View.OnClickListener() {
    public void onClick(View arg0) { 

    }
});

您导入无效 OnClickListener DialogInterface.OnClickListener ,而不是 View.OnClickListener

答案 1 :(得分:3)

您已导入DialogInterface.OnClickListener而不是View.OnClickListener

修复导入或使用new View.OnClickListener() { ...显示您想要的类。

答案 2 :(得分:2)

当方法需要View.OnClickListener时,您正在创建DialogInterface.OnClickListener。

尝试:

public void addListenerOnButton() {
    button1 = (Button) findViewById(R.id.button1);
    button1.setOnClickListener(new View.OnClickListener() {
        public void onClick(View arg0) { 

        }
    });
}