我在使用“setOnClickListener(onSave)”和“View.OnClickListener”时遇到一些问题
下面是我的代码:
package apt.tutorial;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class LunchList extends Activity {
Restaurant r = new Restaurant ();
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
//save button
//be notified when the button is clicked
Button save =(Button)findViewById(R.id.save);
save.setOnClickListener(onSave){
}
private View.OnClickListener onSave=new View.OnClickListener();
public void onClick(View v) {
EditText name=(EditText)findViewById(R.id.name);
EditText address=(EditText)findViewById(R.id.addr);
r.setName(name.getText().toString());
r.setAdress(address.getText().toString());
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}
}
对于 save.setOnClickListener(onSave),我收到错误 save.setOnClickListener(onSave),对于 View.OnClickListener,我收到错误 无法实例化类型 View.OnClickListener。
我查看了这个网站并用谷歌搜索了这个问题,但没有找到解决方案。希望大家能帮帮我。
问候。
最佳答案
删除
后的分号private View.OnClickListener onSave=new View.OnClickListener();
并在 onClickListener 的匿名构造函数中编写 onClick(View v) 或者使用以下代码更改您的代码。
private View.OnClickListener onSave=new View.OnClickListener(
public void onClick(View v) {
EditText name=(EditText)findViewById(R.id.name);
EditText address=(EditText)findViewById(R.id.addr);
r.setName(name.getText().toString());
r.setAdress(address.getText().toString());
});
Button save =(Button)findViewById(R.id.save);
save.setOnClickListener(onSave);
关于Android/Eclipse - 保存按钮错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12803308/