首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

@Override无效的原因是什么?解决办法

2012-03-24 
@Override无效的原因是什么?public void onClick(View v),想在前头加个@Override,报如下错误:Multiple mar

@Override无效的原因是什么?
public void onClick(View v),想在前头加个@Override,报如下错误:
Multiple markers at this line
- The method onClick(View) of type new View.OnClickListener(){} must override a superclass
method
- implements android.view.View.OnClickListener.onClick

Java code
/** 文件名称:Pit.java* 描 述:个人所得税*/package demo.android.pit;import java.text.DecimalFormat;import android.app.Activity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.TextView;import android.widget.Toast;/** 类介绍:程序入口地址*         AndroidManifest.xml文件的activity android:name="."决定*         @Override关键字的函数,一般是由系统调用的*/public class Pit extends Activity {    private static final String TAG = "Pit"; //log标签        private Button m_button_submit; //提交    private EditText m_field_income; //收入    private EditText m_field_insurance; //保险    private TextView m_view_result; //结果输出        /** Called when the activity is first created. */    @Override    public void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.main);                findCtrlsFromID(); //从资源里获取交互界面的控件        setListensers(); //按钮响应函数    }        /*     * 函数介绍:从资源里获取交互界面的控件     * 输入参数:无     * 输出参数:无     * 返回值  :无     */    private void findCtrlsFromID() {        Log.v(TAG, "findCtrlsFromID enter");                m_button_submit = (Button)findViewById(R.id.submit);        m_field_income = (EditText)findViewById(R.id.income);        m_field_insurance = (EditText)findViewById(R.id.insurance);        m_view_result = (TextView)findViewById(R.id.result);                Log.v(TAG, "findCtrlsFromID exit");    }        /*     * 函数介绍:按钮响应函数     * 输入参数:无     * 输出参数:无     * 返回值  :无     */    private void setListensers() {        Log.v(TAG, "setListensers enter");                m_button_submit.setOnClickListener(new Button.OnClickListener() {            //@Override //在BMI程序中,此是有效的。不知为何,此地无效?            public void onClick(View v) {                Log.v(TAG, "setListensers : onClick enter");                                DecimalFormat nf = new DecimalFormat("0.00");                try {                    //取得输入参数                    double income = Double.parseDouble(m_field_income.getText().toString())/100;                    double insurance = Double.parseDouble(m_field_insurance.getText().toString());                                        //算法                    double PIT = insurance / (income * income);                                        //结果输出                    m_view_result.setText(getText(R.string.pit_result) + nf.format(PIT));                }                catch (Exception err) {                    Toast.makeText(Pit.this, R.string.input_error, Toast.LENGTH_SHORT).show();                }                                Log.v(TAG, "setListensers : onClick exit");            }        });                Log.v(TAG, "setListensers exit");    }}


[解决办法]
JDK 版本问题 换一个JDK 就可以了,我遇到过就 是这样解决的!

热点排行