android java setOnClickListener error
<p>I am trying to perform a routine when the btnExecute is pressed.  I get an error at each onClick btnxxx.setOnClickListener stating "The type new View.OnClickListener(){} must implement the inherited abstract method View.OnClickListener.onClick(View).  Please help me understand what's wrong.</p>

<pre><code>package com.androidbook.triviaquiz8;

import android.os.Bundle;
import android.os.Environment;
import android.view.View.OnClickListener;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.Button;
import android.widget.EditText;
import android.widget.Spinner;
import android.widget.SpinnerAdapter;

public class QuizHelpActivity extends QuizActivity {

private EditText m1_sqs1;
private EditText m1_rs1;
private EditText m1_rs2;
private EditText m1_cd;
private EditText m1_els1;
private EditText m1_els2;

private EditText m1_sa_in;
private EditText m1_sa_ft;
private EditText m1_sa_mm;
private EditText m1_sa_m;

private EditText m1_ed_in;
private EditText m1_ed_ft;
private EditText m1_ed_mm;
private EditText m1_ed_m;

private Spinner m1_sqs1_spinner;
private Spinner m1_rs1_unit;
private Spinner m1_rs2_unit;
private Spinner m1_cd_unit;
private Spinner m1_els1_unit;
private Spinner m1_els2_unit;

private QuizHelpActivity mContext;

private Button btnSave;
private Button btnClear;
private Button btnExecute;


// 
// onCreate - let the fun begin!
// 

@Override 
    public void onCreate(Bundle savedInstanceState){      
        super.onCreate(savedInstanceState); 
        mContext = this; 
        setContentView(R.layout.help);

        m1_sqs1 = (EditText) findViewById(R.id.m1_sqs1);
        m1_rs1  = (EditText) findViewById(R.id.m1_rs1);
        m1_rs2  = (EditText) findViewById(R.id.m1_rs2);
        m1_cd   = (EditText) findViewById(R.id.m1_cd);
        m1_els1 = (EditText) findViewById(R.id.m1_els1);
        m1_els2 = (EditText) findViewById(R.id.m1_els2);

        m1_sa_in    = (EditText) findViewById(R.id.m1_sa_in);
        m1_sa_ft    = (EditText) findViewById(R.id.m1_sa_ft);
        m1_sa_mm    = (EditText) findViewById(R.id.m1_sa_mm);
        m1_sa_m     = (EditText) findViewById(R.id.m1_sa_m);

        m1_ed_in    = (EditText) findViewById(R.id.m1_ed_in);
        m1_ed_ft    = (EditText) findViewById(R.id.m1_ed_ft);
        m1_ed_mm    = (EditText) findViewById(R.id.m1_ed_mm);
        m1_ed_m     = (EditText) findViewById(R.id.m1_ed_m);

        // Create an OnClick Event in each button.

        Button btnExecute   = (Button) findViewById(R.id.btnExecute);
        Button btnSave      = (Button) findViewById(R.id.btnSave);
        Button btnClear     = (Button) findViewById(R.id.btnClear);

        btnSave.setOnClickListener(new OnClickListener() {                           
            public void onClick(View arg0) {
                }
            });
        btnClear.setOnClickListener(new OnClickListener() {
            public void onClick(View arg0) {
                }
            });
        btnExecute.setOnClickListener(new OnClickListener() {
            private AlertDialog show;
            public void onClick(View arg0) {
                if ((m1_sqs1.getText().length() == 0)           
                        || (m1_sqs1.getText().toString() == " ")){           
                    show = new AlertDialog.Builder(mContext).setTitle("Error")
                    .setMessage("The Square Side length is empty")               
                    .setPositiveButton("OK", null).show();
                    } else if (operator.getText().equals("")) {
                        show = new AlertDialog.Builder(mContext).setTitle("Error")
                        .setMessage(" is null").setPositiveButton(
                                "OK", null).show();} {
                            double m1_sa_in = new Double(m1_sqs1.getText().toString())
                            * new Double(m1_sqs1.getText().toString());   
                            m1_sa_in.setText(Double.toString(m1_sa_in));
                }
            }
        }
</code></pre>
