java简单onclick按钮在安卓中不起作用
我有以下代码片段。我想做的是,当我点击按钮1时,只显示文本。但是eclipse建议我添加onClick(DialogInterface dialog, int which)
,但是在btnOk.setOnClickListener(oclBtnOk);
它给了我这个错误:
The method setOnClickListener(View.OnClickListener) in the type View is not applicable for the arguments (DialogInterface.OnClickListener)
这是我的密码:
TextView tvOut;
Button btnOk;
Button btnCancel;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (savedInstanceState == null) {
getSupportFragmentManager().beginTransaction()
.add(R.id.container, new PlaceholderFragment())
.commit();
}
tvOut = (TextView) findViewById(R.id.textView1);
btnOk = (Button) findViewById(R.id.button1);
btnCancel = (Button) findViewById(R.id.button2);
// create click listener
OnClickListener oclBtnOk = new OnClickListener() {
public void onClick(View v) {
// change text of the TextView (tvOut)
tvOut.setText("Button OK clicked");
}
@Override
public void onClick(DialogInterface dialog, int which) {
// TODO Auto-generated method stub
}
};
// assign click listener to the OK button (btnOK)
btnOk.setOnClickListener(oclBtnOk);
}
# 1 楼答案
同样的问题: 类型视图中的方法setOnClickListener(View.OnClickListener)不适用于参数(DialogInterface.OnClickListener)
卡尔巴顿。setOnClickListener(addClick)
资料来源:
# 2 楼答案
您正在导入错误的
OnClickListener
类^{} 采用
View.OnClickListener
,而不是DialogInterface.OnClickListener
,这是您导入的内容如果没有在这个类的其他地方使用
DialogInterface.OnClickListener
,只需将import语句更改为importandroid.view.View.OnClickListener
如果确实也在类中使用
DialogInterface.OnClickListener
接口,则需要在此处进一步限定类名,如下所示:您还应该删除
onClick(DialogInterface dialog, int which)
方法,因为它只为DialogInterface.OnClickListener
定义