我已经导入了包import android.view.View.OnClickListener;
但是在程序里写 private OnClickListener calcBMI = new OnClickListener() 提示:不能实例化类型 View.OnClickListener”以下是源代码:package com.demo.android.bmi;
import java.text.DecimalFormat;import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;public class Bmi extends Activity {
/** Called when the activity is first created.
* @param <calcBMI>*/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//Listen for button clicks
Button button = (Button)findViewById(R.id.submit);
button.setOnClickListener(calcBMI);
}
private OnClickListener calcBMI = new OnClickListener()
public void onClick(View v){
DecimalFormat nf =new DecimalFormat("0.00");
EditText fieldheight = (EditText)findViewById(R.id.height);
EditText fieldweight = (EditText)findViewById(R.id.weight);
double height = Double.parseDouble(fieldheight.getText().toString())/100;
double weight = Double.parseDouble(fieldheight.getText().toString());
double BMI = weight / (height * height);
TextView result = (TextView)findViewById(R.id.result);
result.setText("YourBMIis"+nf.format(BMI));
//Give health advice
TextView fieldsuggest = (TextView)findViewById(R.id.suggest);
if(BMI>25){
fieldsuggest.setText(R.string.advice_heavy);
} else if(BMI<20){
fieldsuggest.setText(R.string.advice_light);
} else {
fieldsuggest.setText(R.string.advice_average);
}
}
}
但是在程序里写 private OnClickListener calcBMI = new OnClickListener() 提示:不能实例化类型 View.OnClickListener”以下是源代码:package com.demo.android.bmi;
import java.text.DecimalFormat;import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.EditText;
import android.widget.TextView;public class Bmi extends Activity {
/** Called when the activity is first created.
* @param <calcBMI>*/
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
//Listen for button clicks
Button button = (Button)findViewById(R.id.submit);
button.setOnClickListener(calcBMI);
}
private OnClickListener calcBMI = new OnClickListener()
public void onClick(View v){
DecimalFormat nf =new DecimalFormat("0.00");
EditText fieldheight = (EditText)findViewById(R.id.height);
EditText fieldweight = (EditText)findViewById(R.id.weight);
double height = Double.parseDouble(fieldheight.getText().toString())/100;
double weight = Double.parseDouble(fieldheight.getText().toString());
double BMI = weight / (height * height);
TextView result = (TextView)findViewById(R.id.result);
result.setText("YourBMIis"+nf.format(BMI));
//Give health advice
TextView fieldsuggest = (TextView)findViewById(R.id.suggest);
if(BMI>25){
fieldsuggest.setText(R.string.advice_heavy);
} else if(BMI<20){
fieldsuggest.setText(R.string.advice_light);
} else {
fieldsuggest.setText(R.string.advice_average);
}
}
}
解决方案 »
- Activity跳转以及Handler问题
- 大家有没有遇到过edittext不显示光标的情况?
- Android 自己按照SDK例子开发了一个输入法,想让它作为默认输入法
- Android中 从GridView向EditText中插入图片
- 为什么Windowmanager中的ListView不能响应点击事件?
- 关于Android开发中程序调试的问题
- Android 网络部分
- Gson 和Map数组的相互转化
- android动态生成界面问题
- W/dalvikvm(17066): threadid=1: thread exiting with uncaught exception (group=0x
- 再问关于SQLiteQueryBuilder和SQLitedatabase的问题
- 求指教
这是个接口类, 当然不能实例化了 --!
你需要新建一个类去实现这个接口
这是个接口类, 当然不能实例化了 --!
你需要新建一个类去实现这个接口
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main); //Listen for button clicks
Button button = (Button)findViewById(R.id.submit);
button.setOnClickListener(calcBMI);
} private OnClickListener calcBMI = new OnClickListener(){
public void onClick(View v){
//............
}
};