Унаследованный метод, кажется, отрекся от своего предка - PullRequest
0 голосов
/ 29 января 2012

Я все еще получаю: «Тип OnDemandAndAutomatic_Activity должен реализовывать унаследованный абстрактный метод View.OnClickListener.onClick (View)» *

, несмотря на то, что я реализовал метод в двух местах (в обоих местах через «Быстрое исправление»).

Это мой код:

import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;

public class OnDemandAndAutomatic_Activity extends Activity implements View.OnClickListener {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.ondemandandautomatic_activity);

        // try commenting the button code out to see if that lets it run...
        Button buttonAuthorizeUsers = (Button) findViewById(R.id.buttonAuthorizeUsers);
        buttonAuthorizeUsers.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                // TODO Auto-generated method stub
                Intent configure = new  Intent(OnDemandAndAutomatic_Activity.this, Configure_Activity.class);  
                OnDemandAndAutomatic_Activity.this.startActivity(configure);
            }});
    }

/*  @Override
    public void onClick(View v) {
        // TODO Auto-generated method stub
        Intent configure = new  Intent(OnDemandAndAutomatic_Activity.this, Configure_Activity.class);  
        OnDemandAndAutomatic_Activity.this.startActivity(configure);
    }*/

}

1 Ответ

2 голосов
/ 29 января 2012

Поскольку OnDemandAndAutomatic_Activity претендует на реализацию View.OnClickListener, вам необходимо иметь реализацию onClick(), которую вы закомментировали, иначе она не будет компилироваться.

Кроме того, вы отдельно в настоящее время создаете анонимный экземпляр внутреннего класса View.OnClickListener, который вы передаете setOnClickListener(). Для этого тоже потребуется реализация onClick().

Если вы считаете, что вам нужен только один из них, то удалите implements View.OnClickListener из объявления класса или pass this в setOnClickListener().

...